Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. bilgi
Hedef uç noktanızı değiştirdiğinize göre artık proxy'nize bir politika ekleyebilirsiniz.
Politika, API proxy'leriniz aracılığıyla mesaj akışındaki farklı noktalara ekleyebileceğiniz bir Edge bileşenidir. Politikalar, mesaj biçimlerini dönüştürebilir, erişim denetimini zorunlu kılabilir, uzak hizmetleri çağırabilir, kullanıcıları yetkilendirebilir, mesaj içeriğini olası tehditlere karşı inceleyebilir ve daha pek çok şey yapabilir.
Bu eğitimde, XMLtoJSON politikasını proxy'nize ekleyeceksiniz. Bu politika, bir XML mesajının yükünü JSON'a dönüştürür. Ayrıca yanıtın Content-Type başlığını da değiştirir.
XML'den JSON'a politikasını proxy'nize eklemek için:
- Tarayıcıda Edge kullanıcı arayüzünü açıp giriş yapın.
- Ana pencerede API Proxies'i (API Proxy'leri) 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.
Geliştir sekmesini tıklayın:

Edge, API Proxy Düzenleyicisi'ni gösterir.
Navigator bölmesinde Proxy Endpoints > default > PreFlow'u (Proxy Uç Noktaları > varsayılan > PreFlow) tıklayın:

Edge, Flow düzenleyiciyi gösterir:

Ayrıca Edge, varsayılan Proxy Endpoint yapılandırmasını Kod bölmesinde gösterir:
<?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>- Proxy'nize politika eklemek için yanıt PreFlow'da (akış düzenleyicinin alt yarısı) + Adım düğmesini tıklayın:

Edge, akışınıza ekleyebileceğiniz politikaların kategorilere ayrılmış bir listesini Ekle iletişim kutusunda gösterir:

- Aşağı kaydırın ve Aracılık kategorisinde XML to JSON politikasını seçin.
Varsayılan adları değiştirmeden Ekle'yi tıklayın.
Edge, yeni politikayı yanıtın PreFlow'una ekler:

Ekle'yi tıkladığınızda Edge'in aşağıdakileri yaptığını unutmayın:
- Yeni politika, Gezgin bölmesindeki Politikalar bölümüne eklenir.
- Akış bölmesine XML'den JSON'a dönüştürme politikasını ekler.
- Politikanın yapılandırma XML'sini Kod bölmesinde gösterir.
- Mevcut düzeltmeyi değişikliklerinizle birlikte kaydetmek için Kaydet'i tıklayın.
Hemen deneyin. Bir terminal penceresinde aşağıdaki curl komutunu çalıştırın:
curl https://org_name-test.apigee.net/getstarted
Burada:
- org_name, Apigee hesabınızı oluşturduğunuzda Apigee'nin size atadığı kuruluş adıdır.
-testortamıdır. Yeni proxy'nizi 1. adım: API proxy'si oluşturma bölümünde "test" ortamına dağıttınız./getstarted, Proxy Base Path'tir.
Alternatif olarak, aynı URL'yi bir tarayıcıda açabilirsiniz.
Aşağıdaki yanıtı alırsınız:
{
"root": {
"city": "San Jose",
"firstName": "John",
"lastName": "Doe",
"state": "CA"
}
}Yanıtın gövdesi bu şekilde görünmüyorsa şunları kontrol edin:
- Hedef uç noktanız, 3. adım: Hedef uç noktanızı değiştirin bölümünde açıklandığı gibi "https://mocktarget.apigee.net/xml"dir:
3. adım: Hedef uç noktanızı değiştirin:
- Yanıt olarak "Merhaba, Misafir!" mesajını alırsanız hedef uç noktanın sonuna "/xml" eklemeniz gerekir.
- 404 hatası alırsanız "apigee.com" yerine "apigee.net"e eriştiğinizden emin olun.
- Proxy'nizin en son düzeltmesi dağıtılır. API proxy'nizi API proxy'si dağıtma ve dağıtımı kaldırma bölümünde açıklandığı şekilde yeniden dağıtmayı deneyin.
HTTP isteği ve yanıt başlıklarını görmek için curl'da -vs seçeneğiyle ayrıntı düzeyini etkinleştirin (v yanıtı ayrıntılı hale getirir ancak s daha az ilgi çekici ayrıntıların bir kısmını gizler). Örneğin:
curl -vs https://ahamilton-eval-test.apigee.net/getstarted | python -m json.tool
Aşağıdakine benzer bir yanıt alırsınız. Yanıtın Content-Type üstbilgisinin "application/json" olduğunu unutmayın. XML'den JSON'a 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" } }