Diese Seite gilt für Apigee und Apigee Hybrid.
Apigee Edge-Dokumentation aufrufen
Das Hinzufügen richtlinienbasierter Funktionen zu einem API-Proxy erfolgt in zwei Schritten:
- Konfigurieren einer Instanz eines Richtlinientyps
- Anhängen der Richtlinieninstanz an einen Ablauf
Das folgende Diagramm zeigt die Beziehung zwischen Richtlinien und Abläufen. Wie Sie sehen, wird eine Richtlinie als Ablauf zur Verarbeitung an einen Ablauf angehängt. Um das gewünschte Verhalten für Ihre API zu konfigurieren, müssen Sie ein paar Informationen zu Abläufen verstehen. Dieses Thema wurde zuvor unter Abläufe konfigurieren behandelt.
Ein häufig verwendeter Richtlinientyp ist die SpikeArrest-Richtlinie. SpikeArrest verhindert plötzlich einen Anstieg des Nachrichtentraffics, durch den die Back-End-Dienste beeinträchtigt werden.
Richtlinie zu einem Ablauf hinzufügen
Neuer Proxy-Editor
So hängen Sie eine Richtlinie an einen Ablauf an:
- Wählen Sie einen API-Proxy aus und rufen Sie die Ansicht Entwickeln auf.
- Klicken Sie im linken Bereich in der Zeile Richtlinien auf die Schaltfläche +.
Klicken Sie im Dialogfeld Richtlinie erstellen in das Feld Richtlinientyp auswählen und scrollen Sie nach unten zu Trafficverwaltung und wählen Sie Spike Arrest.
Optional können Sie den Anzeigenamen und den Namen der Richtlinie ändern.
Wenn Sie fertig sind, klicken Sie auf Erstellen, um die Richtlinie zu erstellen.
- Da Sie nun die Spike Arrest-Richtlinie erstellt haben, können Sie sie einem Schritt im PreFlow hinzufügen. Wählen Sie dazu im linken Bereich Proxy-Endpunkte > Standard > PreFlow aus:
- Klicken Sie auf die Schaltfläche + neben PreFlow im Antwortbereich unten rechts im visuellen Editor:
- Wählen Sie im Dialogfeld Richtlinienschritt hinzufügen die Richtlinie Spike Arrest.
Klicken Sie auf Hinzufügen, um die Richtlinie anzuhängen.
Die Richtlinie Spike Arrest wird jetzt im Bereich Antwort angezeigt:
Der folgende XML-Code für den Proxy wird im Texteditor angezeigt:
<ProxyEndpoint name="default"> <PreFlow name="PreFlow"> <Request/> <Response> <Step>< <Name>SA-</Name> </Step> </Response> </PreFlow> <Flows/> <PostFlow name="PostFlow"> <Request/> <Response/> </PostFlow> <HTTPProxyConnection> <BasePath>/myproxy</BasePath> </HTTPProxyConnection> <RouteRule name="default"> <TargetEndpoint>default</TargetEndpoint> </RouteRule> </ProxyEndpoint>
Detaching policies from a flow
To detach a policy from a flow, click the three-dot menu next to the flow and select Delete policy step
Classic Proxy Editor
To attach a policy to a flow:
- Select an API proxy and navigate to the Develop view.
- In the API Proxy Editor, select the flow to which you want to attach a policy in the
Navigator pane.
For example, the PreFlow flow is selected for the default API proxy endpoint in the following figure:
- In the Design view, click +Step associated with the request or response
flow to attach a policy. For example:
The Add Step dialog opens displaying a categorized list of policies.
- Scroll and select the policy type that you want to attach to the selected flow.
- Modify the following fields.
-
Display Name: Unique display name for the policy. The UI will generate a default name, but it is advisable to create a descriptive name for the policy. This will ensure that other developers in your organization have an easy time understanding what the policy is intended to do.
-
Name: Unique name for the policy. The policy name matches the display name with the following exceptions:
-
Spaces are replaced by dashes.
-
Consecutive dashes are replaced by a single dash.
-
Except for dashes, underscores, and spaces (which are replaced, as noted above), characters that are not alphanumeric, such as pound signs, percent signs, ampersands, and so on, are removed.
-
-
- Click Add.
The policy is attached to the selected flow.
After the policy is attached, you’ll see the policy displayed in the Designer view for the flow, in this example the PreFlow of the default proxy endpoint, and in the Policies list in the Navigation pane. The Code view, which displays the XML for the newly attached policy, displays below the Designer view. Apigee generates an instance of the policy that contains a set of reasonable default values.
Adding a policy without attaching it to a flow
To add a policy without attaching it to a flow, which is useful for Handling faults, click + in the Policies bar in the Navigator view to open the Add Policy dialog and add the policy (as described in steps 4 through 6 in the previous section).
A policy that is not attached to any flow is flagged with the detached icon in the Policies list, as shown adjacent to the API key message policy shown in the previous figure.
After you create the policy, you can attach it to a flow by dragging and dropping it from the Policies list to the desired flow in the Designer view.
Detaching policies from a flow
To detach a policy from a Flow, select the Flow. Mouse over the icon for the policy in the Designer view of the Flow. Click the X in the circle that appears in the icon.
Deleting a policy instance
To delete a policy instance, mouse over the entry for the policy in the Navigator view. Click the X in the circle that appears to the right of the entry.
Configuring policies in the UI
When the UI generates a policy instance, it applies reasonable default values for common settings. You may need to modify these settings to meet your requirements.
For example:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <SpikeArrest async="false" continueOnError="false" enabled="true" name="spikearrest-1"> <DisplayName>SpikeArrest-1</DisplayName> <FaultRules/> <Properties/> <Identifier ref="request.header.some-header-name"/> <MessageWeight ref="request.header.weight"/> <Rate>30ps</Rate> </SpikeArrest>
Sie können eine Richtlinie konfigurieren, indem Sie die XML-Konfiguration direkt in der Code-Ansicht bearbeiten. Beispielsweise ist die Spitzen-Nachrichtenrate für die Spike Arrest-Richtlinie anfänglich auf 30 Nachrichten pro Sekunde festgelegt. Sie können die Spitzenrate ändern, indem Sie den <Rate
>-Elementwert in der XML für die Richtlinie ändern. Weitere Informationen zum Konfigurieren von Richtlinien finden Sie in der Richtlinienreferenz.
Richtlinien lassen sich auch per Drag-and-drop in die Ansicht Code einfügen. Dies ist eine gute Möglichkeit, Richtlinien aus den auf GitHub verfügbaren Beispielen wiederzuverwenden.
Wenn Sie Änderungen an einer Richtliniendefinition in der Code-Ansicht vornehmen, werden die Änderungen im Property Inspector übernommen. Das gilt auch umgekehrt: Nehmen Sie Änderungen im Property Inspector vor, damit sie in der XML-Ansicht Code angezeigt werden.
Eine Dokumentation speziell für die in diesem Thema verwendete Kontingentrichtlinie finden Sie unter Kontingentrichtlinie.
Code-Erläuterungen von Gemini Code Assist mit Richtlinien verwenden
Wenn Sie Gemini Code Assist haben, können Sie damit Richtlinien und Richtlinienelemente direkt in der Apigee-Benutzeroberfläche in der Cloud Console kennenlernen:
- Heben Sie beim Bearbeiten der Richtlinie in der Ansicht Code einen Teil des Richtliniencodes hervor, z. B. ein XML-Element oder -Attribut. Sie können auch mehrere Elemente markieren.
- Klicken Sie auf das Symbol für Gemini Code Assist (siehe Abbildung unten). In der Seitenleiste werden Informationen zur Richtlinie und zum von Ihnen hervorgehobenen Element angezeigt.