4. Adım: Politika ekleme

Apigee Edge belgelerini görüntülüyorsunuz.
. Git: Apigee X belgeleri.
bilgi

Hedef uç noktanızı değiştirdiğinize göre proxy'nize politika eklemeniz gerekir.

Politika, iletideki farklı noktalara ekleyebileceğiniz bir Edge bileşenidir API proxy'leriniz üzerinden geçiş yapabilirsiniz. Politikalar; mesaj biçimlerini dönüştürebilir, erişim denetimini zorunlu kılabilir, uzak hizmetleri çağırmak, kullanıcıları yetkilendirmek, mesaj içeriğini olası tehditlere karşı incelemek ve pek çok şey yapmak daha fazla.

Bu eğiticide, proxy'nize XMLtoJSON politikasını ekleyeceksiniz. Bu politika bir XML mesajının yükünü JSON'ye dönüştürür. Ayrıca yanıtın Content-Type üstbilgisi.

XML'i JSON politikasına proxy'nize eklemek için:

  1. Tarayıcıda Edge kullanıcı arayüzünü açıp giriş yapın.
  2. Ana pencerede API Proxy'leri seçeneğini tıklayın ve bir proxy seçin. Bu örnekte 1. Adım: API proxy'si oluşturma bölümünde oluşturduğunuz proxy'yi seçin.
  3. Geliştirme sekmesini tıklayın:

    Edge, API Proxy Düzenleyicisi'ni gösterir.

  4. Gezgin bölmesinde Proxy Uç Noktaları > varsayılan > PreFlow:

    Edge, Akış düzenleyicisini görüntüler:

    Buna ek olarak Edge, Kod bölmesi:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <ProxyEndpoint name="default">
      <Description/>
      <FaultRules/>
      <PreFlow name="PreFlow">
        <Request/>
        <Response/>
      </PreFlow>
      <PostFlow name="PostFlow">
        <Request/>
        <Response/>
      </PostFlow>
      <Flows/>
      <HTTPProxyConnection>
        <BasePath>/getstarted</BasePath>
        <Properties/>
        <VirtualHost>default</VirtualHost>
        <VirtualHost>secure</VirtualHost>
      </HTTPProxyConnection>
      <RouteRule name="default">
        <TargetEndpoint>default</TargetEndpoint>
      </RouteRule>
    </ProxyEndpoint>
  5. Proxy'nize politika eklemek için şuradaki + Adım düğmesini tıklayın: şu yanıtı kullanabilirsiniz: PreFlow (Akış düzenleyicisinin alt yarısı):

    Edge, Ekle iletişim kutusunda politikaların kategorilere ayrılmış bir listesini Akışınıza şunları ekleyebilirsiniz:

  6. Aşağı kaydırın ve Uyumlulaştırmada XML'den JSON'ye politikasını seçin seçin.
  7. Varsayılan adları değiştirmeden Ekle'yi tıklayın.

    Edge, yeni politikayı yanıtın PreFlow'a ekler:

    Ekle'yi tıkladığınızda Edge'in aşağıdakileri yapacağını unutmayın:

    • Yeni politikayı Gezinme'deki Politikalar bölümüne ekler. bölmesini de kullanabilirsiniz.
    • XML'i Akış bölmesinde JSON politikasına ekler.
    • Kod bölmesinde politikanın yapılandırma XML'sini gösterir.
  8. Yaptığınız değişikliklerle birlikte mevcut düzeltmeyi kaydetmek için Kaydet'i tıklayın.

Şimdi deneyin! Bir terminal penceresinde aşağıdaki curl komutunu yürütün:

curl https://org_name-test.apigee.net/getstarted

Burada:

ziyaret edin.

Alternatif olarak, aynı URL'yi bir tarayıcıda açabilirsiniz.

Aşağıdaki yanıtı almanız gerekir:

{
  "root": {
    "city": "San Jose",
    "firstName": "John",
    "lastName": "Doe",
    "state": "CA"
  }
}

Yanıtın gövdesi bu şekilde görünmüyorsa aşağıdakileri kontrol edin:

  1. Hedef uç noktanız, aşağıda açıklandığı gibi "https://mocktarget.Apigee.net/xml" şeklindedir. 3. Adım: Hedef uç noktanızı değiştirin:
    • "Merhaba, Misafir!" mesajını görürseniz yanıt olarak "/xml" eklemeniz gerekir. sona sona erme zamanı.
    • 404 alırsanız "Apigee.net" alanına eriştiğinizden emin olun ve "Apigee.com".
  2. Proxy'nizin en son düzeltmesi dağıtıldı. Açıklanan şekilde API proxy'nizi yeniden dağıtmayı deneyin API proxy'si.

HTTP istek ve yanıt başlıklarını görmek için curl özelliğinde ayrıntı düzeyini -vs seçeneği (v yanıtı ayrıntılı yapar, ancak s gizler bazı ilginç bilgiler verebilirsiniz). Örneğin:

curl -vs https://ahamilton-eval-test.apigee.net/getstarted | python -m json.tool

Aşağıdaki gibi bir yanıt alırsınız. Lütfen Yanıttaki Content-Type üst bilgisi "application/json". XML'den JSON'ye politikası , yanıtı geri göndermeden önce başlığı değiştirir.

*   Trying 10.20.30.40...
* TCP_NODELAY set
* Connected to ahamilton-eval-test.apigee.net (10.20.30.40) port 443 (#0)
...
> GET /getstarted HTTP/1.1
> Host: ahamilton-eval-test.apigee.net
> User-Agent: curl/7.58.0
> Accept: */*
>
< HTTP/1.1 200 OK
< Date: Fri, 25 May 2018 16:20:00 GMT
< Content-Type: application/json;charset=UTF-8
< Content-Length: 77
< Connection: keep-alive
< X-Powered-By: Apigee
< Access-Control-Allow-Origin: *
...
{ [77 bytes data]
{
  "root": {
    "city": "San Jose",
    "firstName": "John",
    "lastName": "Doe",
    "state": "CA"
  }
}

Sonraki adım

Daha ayrıntılı bilgi edinin