Sie lesen gerade die Dokumentation zu Apigee Edge.
Apigee X-Dokumentation aufrufen. info
Die Apigee Edge API-Beispiele enthalten die API-Beispielproxys, Richtlinien, Code und Tools, die die unten beschriebenen Funktionen von Apigee Edge API Services veranschaulichen.
Eine Anleitung zur Verwendung der Beispiele finden Sie unter Beispiel-API-Proxys verwenden.
Praxisnahes Lernerlebnis
Sie möchten schnell loslegen und eine solide Wissensbasis zu Apigee Edge aufbauen? Wir haben eine Bibliothek mit „learn-edge“-Beispielen auf GitHub, mit denen Sie schnell einige Beispielproxys bereitstellen, aufrufen und verfolgen können. Wir beginnen mit dem einfachsten Proxy und gehen dann zu Proxys über, die die API-Schlüsselvalidierung, das Kontingent, das Antwort-Caching, die Fehlerbehandlung und mehr veranschaulichen.
Nachdem Sie das Repository geklont und Ihre Umgebung eingerichtet haben (was nur wenige Minuten dauert), können Sie jedes Beispiel in weniger als einer Minute ausprobieren. Da für jedes Beispiel eine neue Überarbeitung desselben Proxys erstellt wird, wird Ihre Umgebung nicht mit vielen Beispielen überladen. Sie können jederzeit zwischen Revisionen wechseln, eine andere Revision in der Verwaltungsoberfläche neu bereitstellen und sich den Proxycode ansehen. Die README-Datei für jedes Sample enthält außerdem eine kurze Zusammenfassung der Funktion des Samples und seiner Einrichtung.
Probieren Sie es aus: https://github.com/apigee/api-platform-samples/tree/master/learn-edge
Beispiele für Dokument-Cookbooks
Für die Themen im API-Proxy-Kochbuch sind Beispiele verfügbar.
| Name | Beschreibung | Richtlinientypen | Ressourcen |
|---|---|---|---|
| javascript-cookbook | Hier sehen Sie ein einfaches JavaScript-Snippet, mit dem HTTP-Header aus Variablen hinzugefügt, ein im XML-Format vorliegender Wetterbericht von JSON in XML umgewandelt und Inhalte für mobile Clients gekürzt werden. | minimize.js setHeaders.js |
|
| javascript-mashup-cookbook | Eine vollständige JavaScript-Anwendung, die öffentliche APIs aufruft, Ergebnisse kombiniert und eine erweiterte Antwort für die Client-App generiert. Hinweis: Dieser API-Proxy implementiert dieselbe Funktionalität wie das Policy-Mashup. Das zeigt, dass dasselbe Problem mit verschiedenen Techniken gelöst werden kann. | JavaScript | MashItUp.js |
| java-hello | Einfacher „Hello World“-Java-Callout. | JavaCallout | JavaHello.java |
| java-cookbook | Wandelt Antwortinhalte und ‑header in Großbuchstaben um. | JavaCallout |
ResponseUppercase.java |
| java-properties | Hier wird veranschaulicht, wie Attribute in einem Java-Callout verwendet werden. | JavaCallout | JavaProperties.java |
| java-error | Hier werden Muster für die Fehlerbehandlung veranschaulicht, die Sie in Java-Callout-Code verwenden können. | JavaCallout | JavaError.java |
| policy-mashup-cookbook | Eine vollständige Anwendung, die die Richtlinienzusammensetzung verwendet, um zwei öffentliche APIs aufzurufen, Ergebnisse zu kombinieren und eine erweiterte Antwort für die Client-App zu generieren. Hinweis: Dieser API-Proxy implementiert dieselbe Funktionalität wie das JavaScript-Mashup und zeigt, dass dasselbe Problem mit verschiedenen Techniken gelöst werden kann. | AssignMessage ServiceCallout ExtractVariables Javascript XMLToJSON |
GenerateResponse.js |
Beispiel-API-Proxys
Die folgenden API-Proxys befinden sich auf GitHub. Die Readme-Seiten enthalten detaillierte Beschreibungen der Beispiele. Wenn Sie wissen möchten, wie eine bestimmte Richtlinie in einem Beispiel funktioniert, suchen Sie unten in der Spalte „Richtlinientypen“ nach der gewünschten Richtlinie und klicken Sie dann in der Spalte „Name“ auf den Namen des Beispiels. Die Richtlinien sind in der Dokumentation mit den entsprechenden Referenzseiten verknüpft.
Referenz und Tools
Zusätzlich zu den Beispielen für die Dokumentations-Cookbooks und den Beispielproxys in den Tabellen oben enthalten die Edge-GitHub-Beispiele auch die folgenden Ressourcen:
| Name | Beschreibung | Richtlinientypen | Ressourcen |
|---|---|---|---|
| regex-protection | Die Richtlinie zum Schutz vor Bedrohungen durch reguläre Ausdrücke kann Ihre Backend-APIs und ‑Mikrodienste vor Angriffen mit SQL-Einschleusung schützen. | – | |
| oauth-validate-key-secret | Sie implementieren den OAuth-Vorgang mit dem Grant-Typ „Passwort“. Sie müssen sowohl den Anwendungsklientenschlüssel als auch das Secret in Edge validieren, bevor Sie einen externen Identitätsanbieter aufrufen, um die Anmeldedaten des Nutzers zu validieren. | OAuthV2 und andere | – |
| condition-pattern-matching | Mit diesem Proxy können Sie ganz einfach bedingte Anweisungen in einem API-Proxy-Ablauf ausprobieren und testen. | AssignMessage | – |
| access-entity | Hier wird gezeigt, wie Sie Profile für Entitäten aus dem Apigee Edge-Datenspeicher abrufen. | AssignMessage AccessEntity ExtractVariables |
Keine |
| apikey | Einfache API-Schlüsselvalidierung | VerifyAPIKey AssignMessage Quota |
Keine |
| async-callout | Hier wird ein einfacher asynchroner Callout mit dem JavaScript-httpClient veranschaulicht. | JavaScript | assemble_response.js callout.js |
| base64encoder | Veranschaulicht, wie JavaScript-Includes aus JavaScript-Ressourcen in API-Proxys aufgerufen werden. | AssignMessage Javascript |
core-min.js enc-utf16-min.js enc-base64-min.js encodeAuthHeader.js |
| conditional-policy | Einfache bedingte Richtliniendurchsetzung. Wenn eine Anfrage den HTTP-Header „responsetime:true“ enthält, wird durch eine Richtlinie ein Python-Skript ausgeführt, das der Antwortnachricht eine Reihe von Leistungsmesswerten als HTTP-Header hinzufügt. | Script (Python) | timer.py |
| dynamic-endpoint | Implementiert einfaches bedingtes Routing in einem etwas komplexeren Szenario, in dem zwei URLs und eine Standardroute definiert werden. | Keine | Keine |
| jira-release-notes | Dieser API-Proxy wird vom Apigee-Dokumentationsteam verwendet, um Versionshinweise aus Jira zu generieren. | JSONToXML XSL |
releasenotes_api.xsl |
| kerberos-credential-mediation | In diesem Beispiel wird gezeigt, wie die Kerberos-Anmeldedatenvermittlung in Apigee Edge ausgeführt wird. | JavaCallout | Java-JAR-Datei |
| oauth-advanced | Ein vollständiges, funktionierendes Beispiel für den Ablauf des Grant-Typs „Autorisierungscode“ mit Apigee Edge als Autorisierungsserver. |
GenerateAccessToken Viele andere… |
Beispielcode ansehen |
| oauth-client-credentials | Hier wird ein voll funktionsfähiger OAuth 2.0-Tokenendpunkt für den Berechtigungstyp „Clientanmeldedaten“ konfiguriert. | GenerateAccessToken | Keine |
| oauth-login-app | Verworfen. Wir empfehlen, sich stattdessen das oauth-advanced-Beispiel anzusehen. | ||
| oauth-validate-key-secret | Hier wird eine Technik zum Validieren des Schlüssels und des Secrets des Clients veranschaulicht, bevor ein Identitätsanbieter aufgerufen wird, um Nutzeranmeldedaten im Ablauf des Genehmigungstyps „Passwort“ zu validieren. | OAuthV2 AssignMessage ExtractVariables ServiceCallout RaiseFault |
Keine |
| oauth-verify-accesstoken | Hier wird ein API-Proxy gezeigt, der so konfiguriert ist, dass er OAuth 2.0-Zugriffstokens validiert und das Kontingent überprüft. | VerifyAccessToken Quota |
Keine |
| oauth10a-3legged | Veranschaulicht eine dreibeinige OAuth-Konfiguration. | GenerateAccessToken GenerateRequestToken ServiceCallout VerifyAccessToken |
Keine |
| outbound-oauth | Verwendet die Microsoft Azure Translator API zum Übersetzen von Tweets. Dazu wird ein ausgehender Aufruf ausgeführt, um ein OAuth-Zugriffstoken abzurufen. Das Token wird dann mithilfe der Caching-Richtlinien für API-Dienste im Cache gespeichert und bei jedem ausgehenden Aufruf wiederverwendet. Außerdem ist eine Browser-Demo-App enthalten, mit der der API-Proxy aufgerufen wird. | AssignMessage LookupCache PopulateCache Javascript |
api-config.js api-token-get.js translate-query.js translate-results.js |
| Seitenumbruch | Paginierung einer XML-Antwortnachricht basierend auf den vom Client bereitgestellten Parametern „limit“ und „offset“ | AssignMessage ExtractVariables ResponseCache VerifyApiKey XSL |
paginate.xslt |
| response-cache | Veranschaulicht, wie Wettervorhersagen auf Edge für 10 Minuten im Cache gespeichert werden. | ResponseCache AssignMessage |
Keine |
| simple-python | Hier wird ein einfaches Szenario gezeigt, in dem ein Python-Script an die -Antwort angehängt wird, um einen Header-Wert hinzuzufügen. |
Script (Python) | setHeader.py |
| soap | Hier wird eine XSL-Transformation gezeigt, mit der eine WSDL-Datei als Reaktion auf eine Anfrage mit dem Abfrageparameter „?wsdl“ neu geschrieben wird. | AssignMessage ExtractVariables Script (Python) XSL |
calculateaddress.py fixwsdl.xsl |
| Streaming | Demonstriert eine HTTP-Streamingkonfiguration. | Keine | Keine |
| target-reroute | Hier wird gezeigt, wie mit JavaScript dynamisch eine Ziel-URL basierend auf dem Inhalt einer Anfragenachricht ausgewählt wird. | ExtractVariables Javascript |
rewriteTargetUrl.js |
| twitter-mobile-timeline | Hier wird gezeigt, wie Sie mit JavaScript unnötige Parameter aus Tweets entfernen können. Das Ergebnis ist ein optimierter Twitter-Feed, der auch auf ressourcenbeschränkten Mobilgeräten gut funktioniert. | AssignMessage Javascript |
MobileTimeline.js |
| twitter-oembed | Wandelt Zeitachsenantworten (z.B. aus statuses/user_timeline.json) in eine oEmbed-Antwort um, die die Zeitachsendaten als Rich-HTML-Inhalte enthält. | AssignMessage JavaScript |
search-oembed.js |
| Variablen | Hier wird gezeigt, wie Variablen basierend auf Transport- und JSON- und XML-Nachrichteninhalten extrahiert und festgelegt werden. | AssignMessage ExtractVariables XMLToJSON |
minimize.js |
| xmltojson | Konvertiert Antwortdaten von XML in JSON. | XMLToJSON JSONToXML |
Keine |
|
|
XML-Schemadateien, die Sie als Referenz verwenden können, wenn Sie API-Proxys, Richtlinien, API-Produkte sowie Entwickler- und App-Profile konfigurieren. |
||
|
|
Enthält das Bereitstellungstool „deploy.py“, mit dem ein API-Proxy in eine Organisation in Apigee Edge importiert und dann in der angegebenen Umgebung bereitgestellt wird. |
||
|
|
Mit dem Tool für Organisationssnapshots werden Organisationseinstellungen abgerufen, darunter Entwickler, API-Produkte, virtuelle Hosts und Schlüssel/Wert-Paar-Zuordnungen. Es kann verwendet werden, um die Details einer Organisation zu sichern oder die Einstellungen in einer Organisation zu ermitteln. |
Apigee-127
Wenn Sie Entwickler sind, können Sie mit Apigee-127 API-Proxys mit Node.js und Swagger erstellen. Sie finden a127-Beispiele auch auf GitHub: https://github.com/apigee-127/a127-samples.
Erlebnisse mit anderen teilen
Teilen Sie Ihre Erfahrungen im Apigee Developer Forum.