Collegamento di un flusso condiviso mediante un hook di flusso

Questa pagina si applica ad Apigee e Apigee hybrid.

Visualizza la documentazione di Apigee Edge.

Puoi fare in modo che i flussi condivisi eseguano la pre-elaborazione delle richieste boilerplate o la post-elaborazione della risposta su una serie di API. Con un hook del flusso, puoi collegare un flusso condiviso in modo che venga eseguito nella stessa posizione per tutti i proxy API di cui è stato eseguito il deployment in un ambiente specifico. In questo modo ottieni una sequenza di logica, implementata e sottoposta separatamente, che non fa parte del codice di implementazione di un proxy.

Poiché il codice collegato a un hook di flusso non rientra nel contesto della logica di base del proxy API, parte del suo comportamento differisce dai proxy API. Tieni presente che:

  • Devi disporre dell'autorizzazione per collegare un flusso condiviso a un hook di flusso. Devi essere un amministratore dell'organizzazione.
  • Puoi collegare un solo flusso condiviso a ogni hook di flusso.
  • Puoi collegare lo stesso flusso condiviso a più hook di flusso.
  • Se un flusso condiviso collegato a un hook di flusso genera un errore o si verificano errori durante l'esecuzione del flusso condiviso, il messaggio verrà rifiutato e l'errore verrà restituito al chiamante.
  • Se un messaggio viene rifiutato durante l'esecuzione di un hook di flusso, i dettagli verranno registrati in Analytics nel contesto del proxy chiamato. Il flusso condiviso può anche generare un errore con un codice personalizzato e un messaggio di errore

Il seguente video mostra come connettere un flusso condiviso a un hook di flusso e quindi tracciarlo nell'UI di Apigee.

Un flusso condiviso collegato a un proxy tramite un hook di flusso offre un ottimo posto per la logica che applica ampi requisiti dei criteri. Ad esempio, immagina di avere un team che gestisce un singolo insieme di requisiti di sicurezza per più team che rappresentano linee di business diverse (LOB). Ogni team LOB può sviluppare API in base alle proprie esigenze e senza dover tenere conto dei requisiti di sicurezza più ampi. Il team di sicurezza può implementare questi requisiti di sicurezza in un flusso condiviso, quindi collegare il flusso all'ambiente Apigee utilizzando un hook di flusso. Poiché il flusso condiviso non fa parte del codice proxy, il team di sicurezza può rivederlo in base alle esigenze senza interferire con il codice LOB.

I flussi condivisi collegati tramite hook di flusso vengono eseguiti in quella posizione per ogni proxy API di cui è stato eseguito il deployment nell'ambiente di hook proxy. Per questo motivo, la possibilità di utilizzare gli hook di flusso è disponibile solo per gli amministratori di un'organizzazione Apigee.

Per saperne di più sui flussi condivisi, consulta Creazione di flussi condivisi riutilizzabili.

Puoi collegare un flusso condiviso a un hook di flusso utilizzando l'interfaccia utente Apigee o l'API Flowhooks. Puoi collegare al massimo un flusso condiviso a un hook di flusso in ognuna delle seguenti posizioni:

  • hook di flusso pre-proxy per la logica che deve essere applicata PRIMA dell'esecuzione di un endpoint proxy.

    Ad esempio, potresti definire una logica per applicare la sicurezza a tutte le API di un ambiente.

  • hook di flusso pre-target per la logica che deve essere applicata PRIMA dell'esecuzione di un endpoint di destinazione.

    Ad esempio, potresti implementare il logging prima che la richiesta raggiunga il backend. Puoi anche applicare la mediazione rimuovendo alcuni campi dalla richiesta.

  • hook di flusso post-target per la logica che deve essere applicata DOPO l'esecuzione della risposta di destinazione.

    Verrà applicato immediatamente dopo che la risposta torna dal backend. Puoi utilizzarlo per registrare la risposta del backend o eseguire una mediazione rimuovendo i campi sensibili dalla risposta del backend.

  • hook di flusso post-proxy per la logica che deve essere applicata DOPO l'endpoint proxy e subito prima che la risposta venga inviata al client.

    Potrebbero essere incluse alcune logiche di applicazione forzata di CORS, il logging della risposta o l'esecuzione di mashup o formattazione.

Collegamento di un flusso condiviso a un hook di flusso

Per collegare un flusso condiviso a un hook di flusso, devi essere un amministratore dell'organizzazione contenente il flusso condiviso.

Apigee nella console Cloud

Per collegare un flusso condiviso a un hook di flusso:

  1. Apri l'UI di Apigee nella console Cloud in un browser.
  2. Seleziona l'organizzazione che include il flusso condiviso. Consulta Passaggio da un'organizzazione all'altra.

    Il flusso condiviso sarà disponibile per tutti i proxy API e i flussi condivisi di cui è stato eseguito il deployment in un ambiente da questa organizzazione. Non sarà disponibile all'esterno di questa organizzazione.

  3. Nel riquadro di navigazione a sinistra, fai clic su Gestione > Ambienti.
  4. Seleziona l'ambiente che vuoi modificare dall'elenco degli ambienti disponibili.
  5. Fai clic sulla scheda hook di flusso nella pagina Dettagli ambiente.

    Viene visualizzata la vista hook di flusso.

  6. Nell'elenco degli hook di flusso, identifica l'hook di flusso a cui vuoi collegare il flusso condiviso. L'hook di flusso scelto dipende da dove vuoi che venga eseguito il flusso condiviso.
    Posizione hook di flusso Descrizione
    Preproxy Viene eseguita prima dell'esecuzione di un endpoint proxy
    Pretarget Viene eseguita prima dell'esecuzione di un endpoint di destinazione
    Post target Esegue dopo l'esecuzione della risposta target
    Post proxy Esegue dopo l'endpoint proxy e subito prima che la risposta sia inviata al client
  7. Nella casella di elenco dell'hook di flusso che hai scelto, seleziona il flusso condiviso che vuoi collegare.
  8. Collega flussi condivisi ad altri hook di flusso in base alle esigenze.
  9. Fai clic su Salva per collegare i flussi condivisi selezionati agli hook di flusso.

Versione classica di Apigee

Per collegare un flusso condiviso a un hook di flusso:

  1. Accedi all'UI di Apigee.
  2. Seleziona l'organizzazione che include il flusso condiviso. Consulta Passaggio da un'organizzazione all'altra.

    Il flusso condiviso sarà disponibile per tutti i proxy API e i flussi condivisi di cui è stato eseguito il deployment in un ambiente da questa organizzazione. Non sarà disponibile all'esterno di questa organizzazione.

  3. Seleziona Amministratore > Ambienti > Hook di flusso nella barra di navigazione a sinistra.

    Viene visualizzata la vista hook di flusso:

    Pagina dei hook di flusso che mostra i flussi condivisi pre-proxy, pre-target, post-proxy e post-target

  4. Dall'elenco a discesa dell'ambiente, seleziona l'ambiente che vuoi modificare.
  5. Nell'elenco degli hook di flusso, identifica l'hook di flusso a cui vuoi collegare il flusso condiviso. L'hook di flusso scelto dipende da dove vuoi che venga eseguito il flusso condiviso.
    Posizione hook di flusso Descrizione
    Preproxy Viene eseguita prima dell'esecuzione di un endpoint proxy
    Pretarget Viene eseguita prima dell'esecuzione di un endpoint di destinazione
    Post proxy Esegue dopo l'endpoint proxy e subito prima che la risposta sia inviata al client
    Post target Esegue dopo l'esecuzione della risposta target
  6. Posiziona il cursore sull'hook di flusso nell'elenco per visualizzare la colonna delle azioni.
  7. Fai clic su Modifica.
  8. Nella finestra di dialogo Flusso condiviso, seleziona il flusso condiviso che vuoi collegare dal menu Flusso condiviso.
  9. Fai clic su Ok.
  10. Collega flussi condivisi ad altri hook di flusso in base alle esigenze.