Schritt 4: Richtlinie hinzufügen

Sie sehen die Dokumentation zu Apigee Edge.
Zur Apigee X-Dokumentation
weitere Informationen

Nachdem Sie Ihren Zielendpunkt geändert haben, können Sie Ihrem Proxy eine Richtlinie hinzufügen.

Eine Richtlinie ist eine Edge-Komponente, die Sie an verschiedenen Punkten im Nachrichtenfluss über Ihre API-Proxys anhängen können. Richtlinien können Nachrichtenformate konvertieren, die Zugriffssteuerung erzwingen, Remote-Dienste aufrufen, Nutzer autorisieren, Nachrichteninhalte auf mögliche Gefährdungen prüfen und vieles mehr.

In dieser Anleitung fügen Sie Ihrem Proxy die XML-zu-JSON-Richtlinie hinzu. Diese Richtlinie konvertiert die Nutzlast einer XML-Nachricht in JSON. Außerdem wird der Content-Type-Header der Antwort geändert.

So fügen Sie Ihrem Proxy die XML-zu-JSON-Richtlinie hinzu:

  1. Öffnen Sie die Edge-UI in einem Browser und melden Sie sich an.
  2. Klicken Sie im Hauptfenster auf API Proxys und wählen Sie einen Proxy aus. Wählen Sie für dieses Beispiel den Proxy aus, den Sie in Schritt 1: API-Proxy erstellen erstellt haben.
  3. Klicken Sie auf den Tab Entwickeln:

    Edge zeigt den API-Proxy-Editor an.

  4. Klicken Sie im Bereich Navigator auf Proxy-Endpunkte > Standard > PreFlow:

    Edge zeigt den Flow-Editor an:

    Darüber hinaus zeigt Edge im Bereich Code die Standardkonfiguration des Proxy-Endpunkts an:

    <?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. Klicken Sie in der PreFlow-Antwort (in der unteren Hälfte des Ablaufeditors) auf die Schaltfläche + Step, um dem Proxy eine Richtlinie hinzuzufügen:

    Edge zeigt im Dialogfeld Hinzufügen eine kategorisierte Liste von Richtlinien an, die Sie Ihrem Ablauf hinzufügen können:

  6. Scrollen Sie nach unten und wählen Sie in der Kategorie "Mediation" die Richtlinie XML-zu-JSON aus.
  7. Übernehmen Sie die Standardnamen und klicken Sie auf Hinzufügen.

    Edge hängt die neue Richtlinie an den PreFlow der Antwort an:

    Beachten Sie, dass Edge Folgendes ausführt, wenn Sie auf Add (Hinzufügen) klicken:

    • Die neue Richtlinie wird im Bereich Navigator unter Richtlinien hinzugefügt.
    • Die XML-zu-JSON-Richtlinie wird im Bereich Ablauf hinzugefügt.
    • Die XML-Konfigurationsdatei der Richtlinie wird im Bereich Code angezeigt.
  8. Klicken Sie auf Speichern, um die aktuelle Überarbeitung mit Ihren Änderungen zu speichern.

Probieren Sie es jetzt aus. Führen Sie in einem Terminalfenster den folgenden curl-Befehl aus:

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

Wobei:

Alternativ können Sie diese URL in einem Browser öffnen.

Sie sollten die folgende Antwort erhalten:

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

Wenn der Antworttext anders aussieht, prüfen Sie Folgendes:

  1. Ihr Zielendpunkt ist „https://mocktarget.apigee.net/xml“, wie in Schritt 3: Zielendpunkt ändern beschrieben:
    • Wenn Sie "Hallo, Guest!" als Antwort erhalten, müssen Sie "/xml" an das Ende des Zielendpunkts anhängen.
    • Wenn Sie einen 404-Fehler erhalten, prüfen Sie, ob Sie auf "apigee.net" und nicht auf "apigee.com" zugreifen.
  2. Die aktuelle Überarbeitung Ihres Proxys wird bereitgestellt. Stellen Sie den API-Proxy noch einmal bereit, wie unter API-Proxy bereitstellen und Bereitstellung aufheben beschrieben.

Wenn Sie die HTTP-Anfrage- und die HTTP-Antwort-Header sehen möchten, aktivieren Sie die Ausführlichkeit in curl mit der Option -vs. v macht die Antwort sichtbar, s unterdrückt dagegen einige der weniger wichtige Details. Beispiel:

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

Sie sollten eine Antwort wie die im Folgenden aufgeführte erhalten. Der Content-Type-Header in der Antwort lautet "application/json". Die XML-zu-JSON-Richtlinie ändert den Header, bevor die Antwort zurückgesendet wird.

*   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"
  }
}

Nächster Schritt

Tiefer einsteigen