Questa pagina si applica a Apigee e Apigee ibridi.
Visualizza documentazione di Apigee Edge.
L'aggiunta di funzionalità basate su criteri a un proxy API è un processo in due fasi:
- Configura un'istanza di un tipo di criterio.
- Collega l'istanza del criterio a un flusso.
Il diagramma seguente mostra la relazione tra criteri e flussi. Come puoi vedere, un criterio è collegato a un flusso come passaggio di elaborazione. Per configurare il comportamento desiderato per l'API, devi dobbiamo capire un po' dei flussi. Questo argomento è stato trattato in precedenza in Configurazione dei flussi.
Un tipo di criterio di uso comune è il criterio SpikeArrest. SpikeArrest impedisce aumenti improvvisi del traffico dei messaggi che potrebbero inondare i tuoi servizi di backend.
Collegamento di un criterio a un flusso
Nuovo editor proxy
Per collegare un criterio a un flusso:
- Seleziona un proxy API e vai alla vista Sviluppo.
- Nel riquadro a sinistra, fai clic sul pulsante + nella riga Criteri.
Nella finestra di dialogo Crea criterio, fai clic nel campo Seleziona il tipo di criterio e Scorri verso il basso fino a Gestione del traffico e seleziona SpikeArrest.
Se vuoi, puoi modificare il Nome visualizzato e il Nome del criterio.
Al termine, fai clic su Crea per creare il criterio.
- Ora che hai creato il criterio Spike Arrest, puoi allegarlo a un passaggio nella preFlow. Per farlo, seleziona Endpoint proxy > predefinita > PreFlow nel riquadro a sinistra:
- Fai clic sul pulsante + accanto a PreFlow nel riquadro Risposta in basso a destra nell'Editor visivo:
- Nella finestra di dialogo Aggiungi criterio, seleziona il criterio Arresto picchi.
Fai clic su Aggiungi per allegare le norme.
Il criterio Spike Arrest viene ora visualizzato nel riquadro Risposta:
Nell'editor di testo viene visualizzato il seguente codice XML per il proxy:
<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>
Puoi configurare un criterio modificando direttamente la sua configurazione XML nella
Vista Codice. Ad esempio, la frequenza massima dei messaggi per il criterio arresto picco è
impostato inizialmente su 30 messaggi al secondo. Puoi modificare la frequenza di picco modificando
<Rate
> nel file XML per il criterio. Per ulteriori dettagli sulla configurazione dei criteri, consulta la Guida di riferimento ai criteri.
Puoi anche tagliare e incollare i criteri nella visualizzazione Codice. Questo è un ottimo modo per riutilizzare i criteri presi dagli esempi disponibili su GitHub.
Quando apporti modifiche alla definizione di un criterio nella visualizzazione Codice, le modifiche vengono applicate nell'strumento di ispezione della proprietà. È vero anche il contrario: le modifiche apportate nel Controllo proprietà e vengono visualizzate nel file XML Vista Codice.
Per la documentazione specifica del criterio per le quote utilizzato in questo argomento, consulta Criteri per le quote.
Utilizzare la spiegazione del codice di Gemini Code Assist con le norme
Se hai Gemini Code Assist, puoi utilizzarlo per comprendere i criteri e gli elementi dei criteri direttamente nell'interfaccia utente di Apigee nella console Cloud:
- Mentre modifichi il criterio nella visualizzazione Codice, evidenzia parte del codice del criterio, ad esempio un elemento o un attributo XML. Puoi anche evidenziare più elementi.
- Fai clic sull'icona di Gemini Code Assist come mostrato di seguito. Il riquadro laterale mostra informazioni sulla norma e sull'elemento evidenziato.