Apigee Edge belgelerini görüntülüyorsunuz.
.
Git:
Apigee X belgeleri. bilgi
Rota, bir isteğin ProxyEndpoint'ten TargetEndpoint'e olan yolunu belirler. Rotada, API ProxyEndpoint'e erişmek için kullanılan URL ve arka ucun URL'si bulunur hedef tarafından tanımlanan bir hizmet.
Rotalara ilişkin bir tanıtım için bu videoyu izleyin. Bu videoda, ProxyEndpoint ve TargetEndpoint.
API proxy'sinin URL'sini belirleme uç nokta
Aşağıdaki resimde, bir uygulamadan ProxyEndpoint'e gelen bir istek gösterilmektedir. arka uç hizmetine yönlendirilme isteği:
Edge'de API proxy'si oluşturduktan sonra uygulamanın proxy'ye erişmek için kullandığı varsayılan URL şu biçimdedir:
http://{org-name}-{env-name}.apigee.net/{base-path}/{resource-path} https://{org-name}-{env-name}.apigee.net/{base-path}/{resource-path}
Bu örnekte:
- {org-name} kuruluşunuzun adı. Bu ad, Edge'de bir hesap oluşturduğunuzda oluşturulur.
- {env-name}, Uç ortam adı. Varsayılan olarak, bulutta oluşturulan tüm Apigee kuruluşları iki ortam ile sağlanır: "test" "prod". API proxy'si dağıtırken ortamlardan birine veya her ikisine dağıtmayı seçebilirsiniz.
- {base-path} ve {base-path} şu durumlarda tanımlanır: API proxy'sini oluşturursunuz.
Edge'e bir istek geldiğinde, Edge isteği doğru ProxyEndpoint. Örneğin, Edge'deki bir API proxy'sine erişmek için aşağıdaki URL kullanılır:
http://myOrg-prod.apigee.net/v1/weather/forecastrss
Yukarıdaki şekildeki API proxy'si için ProxyEndpoint tanımını incelerseniz bu URL, Edge tarafından nasıl ayrıştırılır?
- URL'nin alan adı bölümü, http://myOrg-prod.apigee.net,
bir sanal ana makineye bağlayabilirsiniz. Yukarıdaki ProxyEndpoint tanımında, API proxy'si
<VirtualHost> etiketini,
default (varsayılan) adlı bir sanal ana makineye referans vermelidir. Birden fazla sanal makineniz
sahip olmanız gerekir.
.
. Sanal ana makine, API proxy'sinin sunulduğu alanları ve bağlantı noktalarını tanımlar. Sanal ana makine API proxy'sine HTTP protokolü kullanılarak mı yoksa şifrelenmiş HTTPS protokolü. Sanal ana makineler hakkında ayrıntılı bilgi için Sanal ana makineler hakkında (Beta) başlıklı makaleye bakın. - URL'nin ikinci bölümü olan /v1/weather, <BasePath> öğesi ProxyEndpoint. Temel yol, ortamın API proxy'sine özgü olmalıdır. Böylece iki API proxy'leri aynı temel yola sahip değil.
- URL'nin üçüncü bölümü olan /forecastrss, <Flows> etiketi tarafından tanımlanan karşılık gelen Koşullu Akış ile API proxy'si.
Video: API proxy uç noktaları hakkında daha fazla bilgi edinmek için kısa bir video izleyin.
Hedef uç noktanın URL'sini belirleme
<RouteRule> etiketi, ProxyEndpoint tanımı, API proxy'sinin hedefini belirler ve sonrasında değerlendirilir ProxyEndpoint isteğine ait PreFlow, Koşullu Akışlar ve PostFlow'daki politikalar işlendi.
ProxyEndpoint, hedefi şu şekilde tanımlayabilir:
- Bir arka uç hizmetinin doğrudan URL'si.
- Tek bir TargetEndpoint tanımı.
- API proxy'sinin, isteği bir hedefe yetkilendirdiği birden fazla TargetEndpoint bir koşula göre test edilir.
- Boş rota veya hedef, yani istek bir hedefe iletilmeyecektir. Bunun yerine istek ve yanıt oluşturma işlemleri Edge'de gerçekleşir.
Video: Hedef uç noktaları hakkında daha fazla bilgi edinmek için kısa bir video izleyin.
Doğrudan URL
ProxyEndpoint, adlandırılmış herhangi bir TargetEndpoint'i atlayarak doğrudan arka uç hizmetini çağırabilir yapılandırma. Örneğin, aşağıdaki <RouteRule> her zaman bir HTTP http://api.mycompany.com/myAPI: adresine çağrı yapılır:
<RouteRule name="default"> <URL>http://api.mycompany.com/myAPI</URL> </RouteRule>
Ancak TargetEndpoint olmadığı için yalnızca tanımlanan akışlara politika ekleyebilirsiniz. ProxyEndpoint tarafından otomatik olarak oluşturulur.
Tek hedef
Tek bir hedef tanımında, ProxyEndpoint tek bir TargetEndpoint tanımına referans verir aşağıda gösterildiği gibi ada göre verilmiştir:
<RouteRule name="default"> <TargetEndpoint>default</TargetEndpoint> </RouteRule>
Bu API proxy'sine yapılan tüm istekler aynı TargetEndpoint tanımına yönlendirilir. İlgili içeriği oluşturmak için kullanılan <URL> etiketi TargetEndpoint, arka uç hizmetinin konumunu belirler. Yukarıdaki şekilde, hedef URL: http://weather.yahooapis.com.
Koşullu hedefler
<RouteRule> etiketi, isteği bir koşula göre hedefe yönlendirirsiniz. Akış değişkenlerini, sorgu değerlerini, parametreleri, HTTP üstbilgileri, ileti içeriği veya günün saati ve yerel ayar gibi bağlamsal bilgiler kullanın. Örneğin, ABD gibi bir coğrafi bölge ekleyebilirsiniz. ve Birleşik Krallık'ı eklemeniz gerekir. Ardından bir isteği, bölge.
Aşağıdaki rota kuralı, istekteki HTTP başlığını değerlendirir. HTTP üstbilgisi routeTo, TargetEndpoint1'i, ardından istek TargetEndpoint1 adlı TargetEndpoint'e yönlendirilir. Aksi takdirde istek yönlendirilir. TargetEndpoint2'ye taşıyın.
<RouteRule name="MyRoute"> <Condition>request.header.routeTo = "TargetEndpoint1"</Condition> <TargetEndpoint>TargetEndpoint1</TargetEndpoint> </RouteRule> <RouteRule name="default"> <TargetEndpoint>TargetEndpoint2</TargetEndpoint> </RouteRule>
Birden fazla rota kuralınız varsa "default" olarak yani rota olarak bir kural oluşturun. hiçbir koşul içermeyen kuraldır. Varsayılan rota kuralının listenin en sonunda tanımlandığından emin olun koşullu Rotalar'ın sayısını gösterir.
Koşullu rotalar başlıklı makaleyi de inceleyin ve Koşullar referansı.
Video: koşullu hedeflerdir.
Rota boş
Boş rota, istek mesajının TargetEndpoint. ProxyEndpoint gerekli tüm işlemleri yaptığında bu yararlı bir özelliktir, Örneğin, harici bir hizmeti çağırmak için JavaScript kullanarak.
Aşağıdaki örnekte boş rota tanımlanmaktadır:
<RouteRule name="GoNowhere"/>