Sviluppo di proxy API

Questa pagina si applica ad Apigee e Apigee hybrid.

Visualizza la documentazione di Apigee Edge.

Esponi le API su Apigee implementando i proxy API. I proxy API disaccoppiano l'API per le app dai tuoi servizi di backend, proteggendo le app dalle modifiche al codice del backend.

Sviluppa i proxy API utilizzando Apigee in Cloud Code come descritto nelle sezioni seguenti. Consulta anche Gestire cartelle e file in uno spazio di lavoro Apigee.

Creazione di un proxy API

Per creare un proxy API utilizzando Apigee in Cloud Code, assicurati di aver creato un spazio di lavoro di sviluppo locale e poi:

  1. Esegui una delle seguenti azioni:

    • Nell'area di lavoro, posiziona il cursore sulla cartella apiproxies e fai clic su Icona Crea proxy API.

      Il segno + viene visualizzato quando posizioni il cursore sopra la cartella apiproxies

    • Seleziona Visualizza > Riquadro dei comandi per aprire la tavolozza dei comandi e seleziona Cloud Code: Crea bundle proxy Apigee.

    Viene visualizzata la procedura guidata Crea proxy.

  2. Seleziona una delle seguenti opzioni:

    Tipo Descrizione
    Access token-based authentication

    Aggiunge l'autenticazione basata su OAuth 2.0 al proxy API. Apigee aggiunge automaticamente i seguenti criteri al proxy API:

    • Quota per gestire la quota sul proxy.
    • AssignMessage per rimuovere la chiave API, fornita nella chiamata API come parametro di query, dalla richiesta inoltrata al server di backend.
    • OAuthV2 come metodo di autenticazione.
    API key-based authentication

    Un proxy API che utilizza una verifica semplice della chiave API. Apigee aggiunge automaticamente i seguenti criteri al proxy API:

    • Quota per gestire la quota sul proxy.
    • VerifyAPIKey per convalidare le chiavi API presentate dalle app che effettuano la richiesta.
    • AssignMessage per rimuovere la chiave API, fornita nella chiamata API come parametro di query, dalla richiesta inoltrata al server di backend.
    Echo request

    Un proxy API che ripete le richieste. Non è presente un backend target/API per questo tipo di proxy e non è richiesta l'autenticazione. Non ti viene chiesto di specificare un URL per il servizio di backend (Target (Existing API)) e la configurazione dell'endpoint di destinazione predefinito non è inclusa.

    Simple reverse proxy

    Un proxy API che inoltra le richieste a un target di backend. Non include l'autenticazione, pertanto le richieste vengono passate al backend senza alcun controllo di sicurezza.

    OpenAPI 3.0 spec

    Crea un proxy caricando una specifica OpenAPI 3.0 esistente. Per ulteriori informazioni, consulta l'OpenAPI Initiative.

  3. Consulta la sezione Campi principali del proxy API per informazioni sui campi, come il percorso di base, necessari per creare ogni tipo di proxy. Rispondi a ogni richiesta e premi Invio per confermare e procedere oppure Esc per annullare la procedura guidata.

Dopo aver completato i passaggi della procedura guidata, la nuova cartella apiproxy-name viene aggiunta in apiproxies nella sezione Apigee. Ogni cartella del proxy API è strutturata come descritto nella struttura della directory di configurazione del proxy API.

Di seguito è riportato un esempio della configurazione predefinita creata per un proxy API creato con il tipo API key-based authentication.

La struttura della cartella di un proxy di autenticazione basato su chiave API

Per una descrizione della configurazione predefinita, consulta Esplorazione della configurazione predefinita del proxy API.

Esplorazione della configurazione predefinita del proxy API

La tabella seguente riassume i contenuti inclusi nella configurazione predefinita quando crei un proxy API in base al tipo di proxy API e alle opzioni di autenticazione selezionate.

File di configurazione
Proxy inverso semplice
Richiesta di eco
Autenticazione del token di accesso (OAuthV2)
Autenticazione con chiave API
proxies/default.xml
Configurazione dell'endpoint proxy predefinito.
targets/default.xml
Configurazione dell'endpoint di destinazione predefinito.
 
impose-quota.xml
Criterio di quota per definire una quota predefinita.
   
remove-header-authorization.xml
Criterio Assegna messaggio per rimuovere l'intestazione Authorization trasmessa per l'autenticazione.
   
 
remove-query-param-apikey.xml
Criterio Assegna messaggio per rimuovere il parametro di query apikey passato per l'autenticazione.
     
verify-api-key.xml
Criterio VerifyAPIKey per applicare la verifica delle chiavi API.
     
Criterio verify-oauth-v2-access-token.xml
OAuthV2 per convalidare i token di accesso OAuth V2.
   
 

Caricamento di un bundle di proxy API

Per caricare un pacchetto di proxy API in Apigee in Cloud Code:

  1. Esegui una delle seguenti azioni:

    • Nell'area di lavoro Apigee, posiziona il cursore sulla cartella apiproxies e fai clic su Icona del pacchetto di proxy API di importazione.

    • Seleziona Visualizza > Riquadro dei comandi per aprire la tavolozza dei comandi e seleziona Cloud Code: Importa bundle proxy Apigee.

  2. Vai al bundle del proxy API che vuoi caricare e fai clic su Seleziona. Il bundle del proxy API deve essere strutturato come descritto nella struttura della directory di configurazione del proxy API.

  3. (Facoltativo) Per impostazione predefinita, il nome del file ZIP meno l'estensione viene utilizzato per il nome del proxy API. Se il nome non è univoco, ti verrà chiesto di inserirne uno.

La cartella apiproxy-name caricata viene aggiunta in apiproxies nella tua area di lavoro.

Gestione degli endpoint proxy

Come descritto in Che cos'è un proxy API?, un endpoint proxy (ProxyEndpoint) definisce il modo in cui le app client utilizzano le tue API. Configura l'endpoint proxy per definire l'URL del proxy API. L'endpoint del proxy determina inoltre se le app accedono al proxy API tramite HTTP o HTTPS. Puoi collegare i criteri all'endpoint proxy per applicare la sicurezza, i controlli delle quote e altri tipi di controllo dell'accesso e limitazione della frequenza.

Crea e configura gli endpoint proxy come descritto nelle sezioni seguenti.

Creazione di endpoint proxy

Quando crei un proxy API, alla configurazione del proxy API viene aggiunto un endpoint proxy predefinito. Per ulteriori informazioni, consulta Esplorazione della configurazione predefinita del proxy API. Puoi creare endpoint proxy aggiuntivi, se necessario.

Per creare un endpoint proxy utilizzando Apigee in Cloud Code:

  1. Nella tua area di lavoro Apigee, esegui una delle seguenti azioni:

    • Posiziona il cursore del mouse su una delle seguenti cartelle, fai clic su Icona Crea endpoint proxy e seleziona Crea endpoint proxy:
      • apiproxy-name proxy bundle
      • apiproxy-name/apiproxy
    • Posiziona il cursore del mouse sulla cartella apiproxy-name/apiproxy/proxies e fai clic su Icona Crea endpoint proxy.

    Si apre la procedura guidata Crea endpoint proxy.

  2. Inserisci i valori per la serie successiva di prompt. Premi Invio dopo ogni voce per confermare e procedere oppure Esc per annullare.

    Campo Descrizione
    Proxy endpoint name Nome utilizzato per identificare l'endpoint del proxy.
    API proxy base path Parte dell'URL utilizzata per inviare richieste all'API. Apigee utilizza l'URL per associare e instradare le richieste in entrata al proxy API corretto.
    Target endpoint Seleziona no target o default. Per informazioni, consulta Elementi di configurazione di ProxyEndpoint.

L'endpoint viene creato e aggiunto alla cartella apiproxy-name/apiproxy/proxies nella sezione Apigee e aperto nell'editor. Configura l'endpoint proxy, come descritto nella sezione seguente.

Configurazione degli endpoint proxy

Per configurare gli endpoint proxy, consulta le seguenti sezioni:

Gestione degli endpoint di destinazione

Come descritto in Che cos'è un proxy API?, un endpoint di destinazione (TargetEndpoint) definisce il modo in cui il proxy API interagisce con i tuoi servizi di backend. Configura l'endpoint di destinazione in modo che inoltri le richieste al servizio di backend appropriato e definisci eventuali impostazioni di sicurezza, il protocollo HTTP o HTTPS e altre informazioni di connessione. Puoi collegare i criteri all'endpoint di destinazione per assicurarti che i messaggi di risposta siano formattati correttamente per l'app che ha effettuato la richiesta iniziale.

Crea e configura gli endpoint target come descritto in questa sezione.

Creazione di endpoint di destinazione

Quando crei un proxy API inverso, alla configurazione del proxy API viene aggiunto un endpoint di destinazione predefinito. Quando crei un proxy API senza target di backend, alla configurazione del proxy API viene aggiunto solo l'endpoint proxy predefinito, senza endpoint target. Per ulteriori informazioni, consulta Esplorazione della configurazione predefinita del proxy API.

Crea gli endpoint di destinazione, se necessario.

Per creare un endpoint di destinazione utilizzando Apigee in Cloud Code:

  1. Nella tua area di lavoro Apigee, esegui una delle seguenti azioni:

    • Posiziona il cursore del mouse su una delle seguenti cartelle, fai clic su Icona Crea endpoint di destinazione e seleziona Crea endpoint target:
      • apiproxy-name proxy bundle
      • apiproxy-name/apiproxy
    • Posiziona il cursore del mouse sulla cartella apiproxy-name/apiproxy/targets e fai clic su Icona Crea endpoint di destinazione.

    Viene visualizzata la procedura guidata Crea endpoint di destinazione.

  2. Esegui i seguenti passaggi in base al tipo di endpoint di destinazione che vuoi creare:

    Tipo Passaggi
    Destinazione HTTP(S) esterna

    Per definire un target HTTP(s) esterno:

    1. Seleziona Target HTTP(s).
    2. Inserisci il nome dell'endpoint di destinazione in Nome endpoint di destinazione.
    3. Inserisci l'URL del servizio di backend richiamato da questo endpoint di destinazione in URL target di backend.

    Per ulteriori informazioni, consulta la sezione Determinare l'URL dell'endpoint di destinazione.

    Catena di proxy

    Per definire un proxy API di cui è stato eseguito il deployment localmente come target:

    1. Seleziona Catena di proxy.
    2. Inserisci il nome dell'endpoint di destinazione in Nome endpoint di destinazione.
    3. Seleziona un proxy API.
    4. Seleziona l'endpoint del proxy.

    Per ulteriori informazioni, vedi Collegare in serie i proxy.

    Destinazione con bilanciamento del carico

    Per definire un target bilanciato in base al carico utilizzando i server target definiti nell'ambiente:

    1. Seleziona Destinazione bilanciata in base al carico.
    2. Inserisci il nome dell'endpoint di destinazione in Nome endpoint di destinazione.

    Per ulteriori informazioni, consulta Configurare un endpoint target per il bilanciamento del carico tra TargetServer denominati.

L'endpoint di destinazione viene creato e aggiunto alla cartella apiproxy-name/apiproxy/targets e aperto nell'editor. Configura l'endpoint di destinazione, come descritto nella sezione seguente.

Configurazione degli endpoint di destinazione

Configura gli endpoint di destinazione, come descritto nei seguenti argomenti.