Wyświetlasz dokumentację Apigee Edge.
Zapoznaj się z dokumentacją Apigee X. info
Przykłady interfejsu Apigee Edge API zawierają przykładowe serwery proxy interfejsu API, zasady, kod i narzędzia, które ilustrują możliwości usług interfejsu Apigee Edge API opisane poniżej.
Instrukcje korzystania z przykładowych serwerów proxy interfejsu API znajdziesz w artykule Korzystanie z przykładowych serwerów proxy interfejsu API.
Nauka przez działanie
Chcesz szybko zacząć zdobywać praktyczną wiedzę o Apigee Edge? W GitHubie mamy bibliotekę przykładowych projektów „learn-edge”, które umożliwiają szybkie wdrażanie, wywoływanie i śledzenie przykładowych serwerów proxy. Zaczynamy od najprostszego serwera proxy, a następnie przechodzimy do serwerów proxy, które ilustrują walidację klucza interfejsu API, limit, buforowanie odpowiedzi, obsługę błędów i inne funkcje.
Po sklonowaniu repozytorium i skonfigurowaniu środowiska (co zajmuje tylko kilka minut) możesz wypróbować każdy przykład w mniej niż minutę. Każda próbka tworzy nową wersję tego samego serwera proxy, więc w środowisku nie będzie wielu próbek. W każdej chwili możesz przełączać wersje, ponownie wdrażać inną wersję w interfejsie zarządzania i sprawdzać kod serwera proxy. Plik readme każdego przykładu zawiera też krótkie podsumowanie jego działania i konfiguracji.
Wypróbuj! https://github.com/apigee/api-platform-samples/tree/master/learn-edge
Przykłady z książki kucharskiej Dokumentów
W przypadku tematów w książce kucharskiej dotyczącej serwera proxy interfejsu API udostępniamy zestaw przykładów.
| Nazwa | Opis | Typy zasad | Zasoby |
|---|---|---|---|
| javascript-cookbook | Pokazuje prosty fragment kodu JavaScript, który dodaje nagłówki HTTP ze zmiennych, przekształca raport pogodowy w formacie XML z JSON na XML i przycina zawartość dla klientów mobilnych. | minimize.js setHeaders.js |
|
| javascript-mashup-cookbook | Kompletna aplikacja JavaScript, która wywołuje publiczne interfejsy API, łączy wyniki i generuje wzbogaconą odpowiedź dla aplikacji klienta. (Uwaga: ten serwer proxy API ma taką samą funkcjonalność jak mashup zasad, co pokazuje, że ten sam problem można rozwiązać za pomocą różnych technik). | JavaScript | MashItUp.js |
| java-hello | Proste wywołanie Javy „hello world”. | JavaCallout | JavaHello.java |
| java-cookbook | Konwertuje zawartość odpowiedzi i nagłówki na wielkie litery. | JavaCallout |
ResponseUppercase.java |
| java-properties | Pokazuje, jak używać właściwości w wywołaniu Javy. | JavaCallout | JavaProperties.java |
| java-error | Przedstawia wzorce obsługi błędów, których możesz używać w kodzie wywołania Java. | JavaCallout | JavaError.java |
| policy-mashup-cookbook | Kompletna aplikacja, która używa kompozycji zasad do wywoływania 2 publicznych interfejsów API, łączy wyniki i generuje dla aplikacji klienckiej wzbogaconą odpowiedź. (Uwaga: ten serwer proxy interfejsu API implementuje tę samą funkcję co javascript-mashup, co pokazuje, że ten sam problem można rozwiązać za pomocą różnych technik). | AssignMessage ServiceCallout ExtractVariables Javascript XMLToJSON |
GenerateResponse.js |
Przykładowe proxy interfejsów API
Poniższe proxy interfejsu API znajdują się w GitHubie, gdzie na stronach readme znajdziesz szczegółowe opisy przykładów. Jeśli chcesz dowiedzieć się, jak konkretne zasady działają w próbce, w kolumnie Typy zasad poniżej znajdź interesujące Cię zasady, a następnie w kolumnie Nazwa kliknij nazwę próbki. (Zasady są połączone z odpowiednimi stronami referencyjnymi w dokumentacji).
Materiały referencyjne i narzędzia
Oprócz przykładów z książki kucharskiej i przykładowych serwerów proxy w tabelach powyżej przykłady Edge na GitHubie zawierają też te zasoby:
| Nazwa | Opis | Typy zasad | Zasoby |
|---|---|---|---|
| regex-protection | Zasady ochrony przed zagrożeniami związanymi z wyrażeniami regularnymi mogą chronić backendowe interfejsy API i mikrousługi przed atakami typu SQL injection. | Nie dotyczy | |
| oauth-validate-key-secret | Implementujesz proces typu przyznania dostępu OAuth Password. Przed wywołaniem zewnętrznego dostawcy tożsamości w celu zweryfikowania danych logowania użytkownika musisz potwierdzić klucz klienta aplikacji i klucz tajny w Edge. | OAuthV2, inne | Nie dotyczy |
| condition-pattern-matching | Ten serwer proxy umożliwia łatwe wypróbowywanie i testowanie instrukcji warunkowych w przepływie serwera proxy API. | AssignMessage | Nie dotyczy |
| access-entity | Pokazuje, jak pobierać profile jednostek z pamięci danych Apigee Edge. | AssignMessage AccessEntity ExtractVariables |
brak |
| apikey | Implementuje prostą weryfikację klucza interfejsu API | VerifyAPIKey AssignMessage Quota |
brak |
| async-callout | Pokazuje proste wywołanie asynchroniczne za pomocą klienta HTTP JavaScript. | JavaScript | assemble_response.js callout.js |
| base64encoder | Pokazuje, jak wywoływać pliki JavaScript z zasobów JavaScript w proxy interfejsu API. | AssignMessage Javascript |
core-min.js enc-utf16-min.js enc-base64-min.js encodeAuthHeader.js |
| conditional-policy | Umożliwia proste egzekwowanie zasad warunkowych. Gdy żądanie zawiera nagłówek HTTP responsetime:true, zasady wykonują skrypt w języku Python, który dodaje do wiadomości z odpowiedzią zestaw wskaźników wydajności w postaci nagłówków HTTP. | Skrypt (Python) | timer.py |
| dynamic-endpoint | Implementuje proste routowanie warunkowe w nieco bardziej złożonym scenariuszu, który definiuje 2 adresy URL i 1 trasę domyślną. | brak | brak |
| jira-release-notes | Jest to serwer proxy interfejsu API używany przez zespół dokumentacji Apigee do generowania informacji o wersji z Jiry. | JSONToXML XSL |
releasenotes_api.xsl |
| kerberos-credential-mediation | Ten przykład pokazuje, jak przeprowadzić zapośredniczenie danych logowania Kerberos w Apigee Edge. | JavaCallout | Plik JAR Java |
| oauth-advanced | Kompletny, działający przykład przepływu typu uwierzytelnienia kodu autoryzacji z Apigee Edge jako serwerem autoryzacji. |
GenerateAccessToken Wiele innych… |
zobacz przykładowy kod |
| oauth-client-credentials | Pokazuje w pełni funkcjonalny punkt końcowy tokena OAuth 2.0 skonfigurowany dla typu udzielania danych logowania klienta. | GenerateAccessToken | brak |
| oauth-login-app | Rola wycofana. Zamiast tego zalecamy zapoznanie się z przykładem oauth-advanced. | ||
| oauth-validate-key-secret | Ilustruje technikę weryfikacji klucza i tajnego klucza klienta przed wywołaniem dostawcy tożsamości w celu zweryfikowania danych logowania użytkownika w przypadku przepływu typu udzielenia hasła. | OAuthV2 AssignMessage ExtractVariables ServiceCallout RaiseFault |
brak |
| oauth-verify-accesstoken | Pokazuje proxy interfejsu API skonfigurowane do weryfikowania tokenów dostępu OAuth 2.0 i sprawdzania limitu. | VerifyAccessToken Quota |
brak |
| oauth10a-3legged | Przedstawia trzyetapową konfigurację OAuth 1.0a. | GenerateAceessToken GenerateRequestToken ServiceCallout VerifyAccessToken |
brak |
| outbound-oauth | Używa interfejsu Microsoft Azure Translator API do tłumaczenia tweetów. W tym celu wykonuje wywołanie wychodzące, aby uzyskać token dostępu OAuth, a następnie zapisuje go w pamięci podręcznej zgodnie z zasadami buforowania usług API. Za każdym razem, gdy wykonuje wywołanie wychodzące, używa tokena z pamięci podręcznej. Zawiera też demonstracyjną aplikację przeglądarki, która służy do wywoływania serwera proxy interfejsu API. | AssignMessage LookupCache PopulateCache Javascript |
api-config.js api-token-get.js translate-query.js translate-results.js |
| podział na strony | Dzieli na strony wiadomość odpowiedzi XML na podstawie parametrów limitu i przesunięcia podanych przez klienta. | AssignMessage ExtractVariables ResponseCache VerifyApiKey XSL |
paginate.xslt |
| response-cache | Pokazuje, jak buforować prognozy pogody na urządzeniu brzegowym przez 10 minut. | ResponseCache AssignMessage |
brak |
| simple-python | Przedstawia prosty scenariusz dołączania skryptu w języku Python do odpowiedzi, który dodaje do niej wartość nagłówka. |
Skrypt (Python) | setHeader.py |
| mydło | Pokazuje transformację XSL, która w odpowiedzi na żądanie z parametrem zapytania ?wsdl przepisuje plik WSDL. | AssignMessage ExtractVariables Script (Python) XSL |
calculateaddress.py fixwsdl.xsl |
| streaming | Pokazuje konfigurację strumieniowania HTTP. | brak | brak |
| target-reroute | Pokazuje, jak za pomocą kodu JavaScript dynamicznie wybierać docelowy adres URL na podstawie treści wiadomości z żądaniem. | ExtractVariables Javascript |
rewriteTargetUrl.js |
| twitter-mobile-timeline | Pokazuje, jak za pomocą JavaScriptu usuwać z tweetów niepotrzebne parametry, aby uzyskać uproszczoną oś czasu Twittera, która jest przyjazna dla urządzeń mobilnych o ograniczonych zasobach. | AssignMessage Javascript |
MobileTimeline.js |
| twitter-oembed | Przekształca odpowiedzi osi czasu (np. z plików statuses/user_timeline.json) w odpowiedź oEmbed, która zawiera dane osi czasu jako treść HTML z elementami rozszerzonymi. | AssignMessage JavaScript |
search-oembed.js |
| zmienne | Pokazuje, jak wyodrębniać i ustawiać zmienne na podstawie transportu oraz zawartości wiadomości JSON i XML. | AssignMessage ExtractVariables XMLToJSON |
minimize.js |
| xmltojson | Konwertuje dane odpowiedzi z XML na JSON. | XMLToJSON JSONToXML |
brak |
|
|
Pliki schematu XML, których możesz używać jako odniesienia podczas konfigurowania serwerów proxy interfejsu API, zasad, produktów API oraz profili deweloperów i aplikacji. |
||
|
|
Zawiera narzędzie do wdrażania deploy.py, które importuje proxy interfejsu API do organizacji w Apigee Edge, a następnie wdraża je w określonym środowisku. |
||
|
|
Narzędzie do tworzenia migawek organizacji pobiera ustawienia organizacji, w tym deweloperów, produkty API, hosty wirtualne, mapy klucz/wartość itp. Można go używać do tworzenia kopii zapasowych szczegółów organizacji lub do odkrywania ustawień w organizacji. |
Apigee-127
Jeśli jesteś programistą, Apigee-127 pomoże Ci szybko zacząć tworzyć proxy interfejsów API za pomocą Node.js i Swaggera. Przykłady a127 znajdziesz też na GitHubie: https://github.com/apigee-127/a127-samples.
Podziel się wrażeniami
Podziel się swoimi wrażeniami na forum dla deweloperów Apigee.