Crea un semplice proxy API

Stai visualizzando la documentazione di Apigee Edge.
Vai alla documentazione di Apigee X.
info

Apigee Edge ti consente di esporre rapidamente i servizi di backend come API. A tal fine, crea un proxy API che fornisca una facciata per il servizio di backend che vuoi esporre. Devi solo fornire l'indirizzo di rete per il servizio di backend, insieme ad alcune informazioni utilizzate da Edge per creare il proxy API esposto agli sviluppatori.

Il proxy API disaccoppia l'implementazione del servizio di backend dall'API utilizzata dagli sviluppatori. In questo modo, gli sviluppatori sono al riparo da eventuali modifiche future ai tuoi servizi di backend. Man mano che aggiorni i servizi di backend, gli sviluppatori, isolati da queste modifiche, possono continuare a chiamare l'API senza interruzioni.

Guarda questo video per una panoramica del processo di creazione di un proxy API.

Creazione di un proxy API mediante l'interfaccia utente

Il modo più semplice per creare un proxy API è utilizzare la procedura guidata Crea proxy.

Edge

Per accedere alla procedura guidata Crea proxy utilizzando l'interfaccia utente di Edge:

  1. Accedi a apigee.com/edge.
  2. Seleziona Develop > API Proxy nella barra di navigazione a sinistra.
  3. Fai clic su +Proxy.

La procedura guidata Crea proxy mostra e ti guida attraverso i passaggi per generare e aggiungere funzionalità minime a un proxy API.

Prima pagina della procedura guidata Crea proxy che ti chiede di selezionare il proxy inverso, il servizio SOAP, Nessun target o il pacchetto di proxy per personalizzare il flusso della procedura guidata.

Perimetrale classico (Private Cloud)

Per accedere alla procedura guidata Crea proxy utilizzando l'interfaccia utente Edge classica:

  1. Accedi a http://ms-ip:9000, dove ms-ip è l'indirizzo IP o il nome DNS del nodo del server di gestione.
  2. Seleziona API > Proxy API nella barra di navigazione in alto.
  3. Fai clic su + Proxy API.

La procedura guidata Crea proxy visualizza e guida i passaggi per generare e aggiungere funzionalità minime a un proxy API.

Prima pagina della procedura guidata Crea proxy che ti chiede di selezionare il proxy inverso, il servizio SOAP, Nessun target o il pacchetto di proxy per personalizzare il flusso della procedura guidata.

Nella prima pagina della procedura guidata puoi creare un proxy API dalle seguenti origini:

Tipo Descrizione
Proxy inverso (più comune)

Un proxy API che instrada le richieste in entrata ai servizi di backend HTTP esistenti. Può essere un'API JSON o XML. Consulta la sezione Creare un proxy inverso per un servizio HTTP di questa sezione.

Fai clic su Utilizza specifica OpenAPI per generare il proxy da una specifica OpenAPI valida. Per ulteriori informazioni su questa opzione, consulta la sezione Utilizzare le specifiche OpenAPI per generare proxy più avanti in questa sezione.

Servizio SOAP Un proxy API generato da un file WSDL. Consulta l'articolo sull'esposizione di un servizio web basato su SOAP come proxy API.
Nessun target

Un proxy API senza backend API ("nessun target"). È simile alla creazione di un proxy inverso per un servizio HTTP descritta in precedenza, tranne per il fatto che non specificherai un'API esistente quando definisci i dettagli del proxy API.

Fai clic su Utilizza specifica OpenAPI per generare il proxy da una specifica OpenAPI valida. Per ulteriori informazioni su questa opzione, consulta la sezione Utilizzo delle specifiche OpenAPI per la generazione dei proxy più avanti in questa sezione.

Target ospitato

Un proxy API che reindirizza a un'applicazione Node.js di cui è stato eseguito il deployment nell'ambiente Destinazioni ospitate. Consulta la panoramica dei target ospitati.

Carica il bundle proxy Un bundle di proxy API esistente (ad esempio uno dei proxy API di esempio disponibili su GitHub). Consulta Importare un proxy API da un pacchetto di proxy API.

Le sezioni seguenti descrivono come creare un proxy API utilizzando ogni origine.

Creazione di un proxy inverso per un servizio HTTP

Edge genera proxy inversi in base a due informazioni:

  • URL del servizio di backend
  • Percorso URI che identifica in modo univoco l'API che verrà esposta dal proxy API alle app di consumo

L'URL del servizio di backend in genere rappresenta un'applicazione abilitata per i servizi di proprietà della tua organizzazione. Può anche puntare a un'API disponibile pubblicamente. L'API o il servizio può essere sotto il tuo controllo (ad esempio un'applicazione HR interna o un'applicazione Rails nel cloud) oppure può essere un'API o un servizio di terze parti (ad esempio Twitter o Instagram).

Edge

  1. Accedi alla procedura guidata Crea proxy, come descritto in Creazione di un proxy API utilizzando l'interfaccia utente in precedenza in questa sezione.
  2. Nella procedura guidata di creazione del proxy, fai clic su Inverti proxy (più comune). Per generare il proxy da una specifica OpenAPI valida esistente, fai clic su Utilizza specifica OpenAPI. Per informazioni dettagliate su questa opzione, consulta Utilizzare le specifiche OpenAPI per generare proxy di seguito.
  3. Nella pagina Dettagli della procedura guidata, inserisci le informazioni seguenti.
    Campo Descrizione
    Nome Nome visualizzato per l'API. Specifica caratteri alfanumerici, trattini (-) o trattini bassi (_).
    Percorso di base

    Frammento di URI visualizzato dopo l'indirizzo http(s)://[host] del proxy API. Edge utilizza l'URI del percorso di base per associare e instradare i messaggi di richiesta in arrivo al proxy API appropriato.

    NOTA: il percorso base del proxy dell'API è predefinito come il valore specificato per il campo Name convertito in lettere minuscole.

    Seguendo il percorso di base sono presenti eventuali URL di risorsa aggiuntivi. Di seguito è riportata la struttura completa degli URL che i client utilizzeranno per chiamare il proxy API:

    https://[host]/base_path/conditional_flow_path

    NOTA: il percorso di base deve essere univoco; non puoi implementare due proxy API con lo stesso percorso di base. Se modifichi un proxy API di cui è stato eseguito il deployment e imposti il percorso di base sullo stesso valore del percorso di base di un altro proxy API, Edge annulla automaticamente il deployment del proxy API quando lo salvi. Prima di poter eseguire nuovamente il deployment del proxy API, devi modificare il percorso di base in modo che sia univoco.

    Utilizzare caratteri jolly nei percorsi di base

    Utilizza uno o più caratteri jolly /*/ nei percorsi di base dei proxy API per garantire la compatibilità futura dei proxy API. Ad esempio, un percorso di base di /team/*/members consente ai client di chiamare https://[host]/team/blue/members e https://[host]/team/green/members senza dover creare nuovi proxy API per supportare nuovi team. Tieni presente che /**/ non è supportato.

    Descrizione (Facoltativo) Descrizione dell'API.
    Target (API esistente) URL del servizio di backend richiamato da questo proxy API.
  4. Nella pagina Criteri comuni della procedura guidata, configura quanto segue:
    • Requisiti di autorizzazione di sicurezza in Sicurezza: autorizzazione. Consulta la sezione Aggiunta di sicurezza più avanti in questa sezione.
    • Supporto per la condivisione delle risorse tra origini (CORS) in Sicurezza: browser. Consulta la sezione Aggiunta del supporto per CORS di questa sezione.
    • Quote per proteggere il servizio di backend dal traffico elevato in Quota. Consulta la sezione Quote. (non disponibile se è selezionata l'autorizzazione passthrough).
    • Applicazione dei limiti alla monetizzazione per le organizzazioni abilitate alla monetizzazione in Monetizzazione. Consulta Applicare i limiti di monetizzazione ai proxy API.
  5. Nella pagina Host virtuali della procedura guidata, seleziona gli host virtuali a cui verrà associato il proxy API al momento del deployment. Per ulteriori informazioni, consulta Informazioni sugli host virtuali.
  6. Nella pagina Riepilogo, seleziona gli ambienti di deployment, se vuoi, e fai clic su Crea ed esegui il deployment.

    Il nuovo proxy API viene creato e implementato nell'ambiente selezionato.

  7. Fai clic su Modifica proxy per visualizzare la pagina dei dettagli del proxy API.

Perimetrale classico (Private Cloud)

  1. Accedi alla procedura guidata Crea proxy, come descritto in Creazione di un proxy API utilizzando l'interfaccia utente in precedenza in questa sezione.
  2. Nella procedura guidata Crea un proxy, seleziona Proxy inverso (il più comune). Per generare il proxy da una specifica OpenAPI valida esistente, fai clic su Utilizza OpenAPI. Per informazioni dettagliate su questa opzione, vedi Utilizzare le specifiche OpenAPI per generare proxy di seguito.
  3. Fai clic su Avanti.
  4. Nella pagina Dettagli della procedura guidata, inserisci le seguenti informazioni.
    Campo Descrizione
    Nome proxy Il nome visualizzato per l'API.
    Percorso di base del proxy

    Il percorso base del proxy è un frammento URI dopo l'indirizzo http(s)://[host] del proxy API. Edge utilizza l'URI del percorso di base per associare e instradare i messaggi di richiesta in arrivo al proxy API appropriato.

    Nota: per i suggerimenti di Apigee sul controllo delle versioni delle API, vedi Controllo delle versioni nell'ebook Web API Design: The Missing Link.

    Dopo il percorso di base sono presenti eventuali URL di risorse aggiuntive. Ecco la struttura completa dell'URL che i client utilizzeranno per chiamare il proxy API:

    https://[host]/base_path/conditional_flow_path

    Nota: il percorso di base deve essere univoco. Se in un secondo momento modifichi questo proxy e imposti il relativo percorso di base in modo che corrisponda a quello di un altro proxy API, questo proxy API viene annullato automaticamente al salvataggio. Devi modificare il percorso di base prima di poter eseguire nuovamente il deployment.

    Utilizzare un carattere jolly nei percorsi di base

    Puoi utilizzare uno o più caratteri jolly /*/ nei percorsi di base dei proxy API per garantire la compatibilità futura dei proxy. Ad esempio, un percorso di base di /team/*/members consente ai client di chiamare https://[host]/team/blue/members e https://[host]/team/green/members senza dover creare nuovi proxy API per supportare nuovi team. Tieni presente che /**/ non è supportato.

    Nota: il valore predefinito per il percorso di base del proxy è quello specificato per Nome proxy convertito in lettere minuscole, a meno che non modifichi esplicitamente il contenuto nel campo Percorso base proxy.

    API esistente L'URL che la piattaforma API richiama per conto delle app che chiamano la tua API tramite l'URL del proxy API.
    Descrizione La descrizione dell'API.
  5. Nella pagina Sicurezza della procedura guidata, configura quanto segue:
    • Requisiti di autenticazione per la sicurezza. Consulta la sezione Aggiungere la sicurezza più avanti in questa sezione.
    • Supporto della condivisione delle risorse tra origini (CORS). Consulta la sezione Aggiunta del supporto per CORS più avanti in questa sezione.
  6. Nella pagina Host virtuali della procedura guidata, seleziona gli host virtuali a cui verrà associato il proxy API al momento del deployment. Per ulteriori informazioni, consulta Informazioni sugli host virtuali.
  7. Seleziona gli ambienti di deployment e fai clic su Compila e esegui il deployment
    Viene inviato un messaggio di conferma che indica che il nuovo proxy API è stato creato e di cui è stato eseguito il deployment nell'ambiente selezionato.
  8. Fai clic su Visualizza il proxy <nome proxy> nell'editor per visualizzare la pagina dei dettagli del proxy API.

Importazione di un proxy API da un pacchetto di proxy API

Spesso i proxy API vengono definiti come una raccolta di file XML, insieme ad altri file di supporto. Se definisci i proxy API come un insieme di file esterni a Edge, puoi gestirli in un sistema di controllo del codice sorgente e poi importarli in Edge per i test e il deployment.

Guarda questo video per scoprire come creare e importare un proxy API da un bundle di proxy API.

Edge

Per importare i proxy API da un bundle di proxy API:

  1. Accedi alla procedura guidata Crea proxy, come descritto in Creazione di un proxy API utilizzando l'interfaccia utente in precedenza in questa sezione.
  2. Fai clic su Carica bundle di proxy.
  3. Nella pagina Carica bundle del proxy della procedura guidata del proxy, inserisci le seguenti informazioni.

    Campo Descrizione
    Pacchetto ZIP ZIP contenente la configurazione del proxy API. Trascina o fai clic per accedere al file.
    Nome Nome visualizzato per l'API. Il valore predefinito è il nome del file ZIP senza l'estensione.
  4. Fai clic su Avanti.
  5. Nella pagina Riepilogo, seleziona gli ambienti di deployment, se vuoi, e fai clic su Crea ed esegui il deployment.
    Viene visualizzata una conferma della creazione del nuovo proxy API.
  6. Fai clic su Modifica proxy per visualizzare la pagina dei dettagli del proxy API.

Perimetrale classico (Private Cloud)

  1. Accedi alla procedura guidata Crea proxy, come descritto in precedenza in Creazione di un proxy API utilizzando l'interfaccia utente in questa sezione.
  2. Nella procedura guidata Crea un proxy, seleziona Bundle proxy.
  3. Fai clic su Avanti.
  4. Nella pagina Dettagli della procedura guidata del proxy, inserisci le seguenti informazioni.

    Campo Descrizione
    Pacchetto ZIP Fai clic su Scegli file e vai al file ZIP contenente la configurazione del proxy API.
    Nome proxy Il nome visualizzato per l'API.
  5. Esamina le informazioni sulla build e fai clic su Crea.
    Se l'operazione va a buon fine, viene visualizzato un messaggio e Edge esegue automaticamente il deployment del proxy API importato nell'ambiente selezionato della tua organizzazione. L'API esposta dal proxy API è disponibile per essere richiamata.
  6. Fai clic su Visualizza il proxy <nome proxy> nell'editor per visualizzare la pagina dei dettagli del proxy API.
  7. Per eseguire il deployment del proxy, fai clic sull'elenco a discesa Deployment, seleziona l'ambiente in cui vuoi eseguire il deployment e rispondi al prompt.

Esposizione di un servizio web basato su SOAP come proxy API

Nella procedura guidata Crea proxy, fai clic su Servizio SOAP e segui la procedura guidata per creare un proxy passthrough o basato su REST per un servizio SOAP. Per maggiori dettagli, vedi Esposizione di un servizio SOAP come proxy API.

Maggiore sicurezza

Nella pagina Criteri comuni (Edge) o Sicurezza (Edge classico) della procedura guidata Crea proxy, seleziona il tipo di autorizzazione di sicurezza che vuoi aggiungere. La tabella seguente riassume le opzioni disponibili:

Autorizzazione di sicurezza Descrizione
Chiave API Aggiunge una verifica semplice della chiave API al proxy API che stai definendo. In risposta, la piattaforma API aggiunge un criterio VerifyAPIKey e un criterioAssignMessage al tuo proxy API. Il criterio VerifyAPIKey convalida le chiavi API presentate dalle app che effettuano la richiesta. Il criterio AssegnaMessage rimuove la chiave API, fornita nella chiamata API come parametro di query, dalla richiesta inoltrata al server di backend.
OAuth 2.0 Aggiunge l'autenticazione basata su OAuth 2.0 al proxy API. Apigee Edge aggiunge automaticamente due criteri al proxy API: un criterio per verificare un token di accesso e un altro per rimuovere il token di accesso dal messaggio prima di inoltrarlo al servizio di backend. Per scoprire come ottenere un token di accesso, consulta OAuth.
Passthrough (nessuna autorizzazione) Nessuna autorizzazione richiesta. Le richieste vengono passate al backend senza alcun controllo di sicurezza su Apigee Edge.

Aggiunta del supporto CORS

CORS (Cross-Origin Resource Sharing) è un meccanismo standard che consente a un browser web di effettuare richieste dirette a un altro dominio. Lo standard CORS definisce un insieme di intestazioni HTTP che i browser web e i server utilizzano per implementare la comunicazione tra domini.

Puoi aggiungere il supporto di CORS alla tua API selezionando Aggiungi intestazioni CORS nella pagina Norme comuni (Edge) o Sicurezza (Edge classico) della procedura guidata Crea proxy.

Per informazioni più dettagliate sul supporto CORS, inclusa l'aggiunta del supporto preflight CORS a un proxy, consulta la pagina su come aggiungere il supporto CORS a un proxy API.

Utilizzo delle specifiche OpenAPI per generare proxy

Questa sezione illustra l'opzione Utilizza OpenAPI disponibile per generare da una specifica OpenAPI i seguenti tipi di proxy API: inversi, Node.js o senza target.

Che cos'è una specifica OpenAPI?

Logo Open API Initiative"L'iniziativa Open API Initiative (OAI) è incentrata sulla creazione, sull'evoluzione e sulla promozione di un formato di descrizione API indipendente dal fornitore e basato sulla specifica Swagger." Per ulteriori informazioni sull'iniziativa Open API, visita il sito https://openapis.org.

Una specifica OpenAPI utilizza un formato standard per descrivere un'API RESTful. Scritta in formato JSON o YAML, una specifica OpenAPI è leggibile dalle macchine, ma è anche facile da leggere e comprendere per le persone. La specifica descrive questi elementi di un'API come il percorso di base, i percorsi e i verbi, gli intestazioni, i parametri di query, le operazioni, i tipi di contenuti, le descrizioni delle risposte e altro ancora. Inoltre, per generare la documentazione relativa alle API viene comunemente utilizzata una specifica OpenAPI.

Ecco un frammento di una specifica OpenAPI che descrive il servizio target simulato di Apigee, http://mocktarget.apigee.net. Per maggiori informazioni, consulta https://github.com/apigee/api-platform-samples/tree/master/default-proxies/helloworld/openapi.

openapi: 3.0.0
info:
  description: OpenAPI Specification for the Apigee mock target service endpoint.
  version: 1.0.0
  title: Mock Target API
paths:
  /:
    get:
      summary: View personalized greeting
      operationId: View a personalized greeting
      description: View a personalized greeting for the specified or guest user.
      parameters:
        - name: user
          in: query
          description: Your user name.
          required: false
          schema:
            type: string
      responses:
        "200":
          description: Success
  /help:
    get:
      summary: Get help
      operationId: Get help
      description: View help information about available resources in HTML format.
      responses:
        "200":
          description: Success
...

Tramite la procedura guidata Crea proxy, puoi importare una specifica OpenAPI e utilizzarla per generare un proxy API. Una volta generato il proxy, puoi utilizzare l'interfaccia utente di Edge per svilupparlo ulteriormente aggiungendo criteri, implementando codice personalizzato e così via, proprio come qualsiasi proxy Edge.

Creazione di un proxy API da una specifica OpenAPI

Crea i proxy API da una specifica OpenAPI. Con pochi clic, avrai a disposizione un proxy API con percorsi, parametri, flussi condizionali ed endpoint di destinazione generati automaticamente. Successivamente, puoi aggiungere funzionalità come la sicurezza OAuth, la limitazione di frequenza e la memorizzazione nella cache.

Nella procedura guidata Crea proxy, fai clic su Utilizza specifica OpenAPI e segui la procedura guidata per creare un proxy inverso o senza target da una specifica OpenAPI. Per maggiori dettagli, vedi Creare un proxy API da una specifica OpenAPI.

Guarda questo video per imparare a creare un proxy API da una specifica OpenAPI.

Aggiornamento dei flussi in un proxy API utilizzando una specifica OpenAPI

Dopo aver creato un proxy API da una specifica OpenAPI, se modifichi la specifica per aggiungere altri percorsi delle risorse, puoi utilizzarla per aggiungere i flussi condizionali associati al proxy API.

Per aggiornare i flussi in un proxy API utilizzando una specifica OpenAPI:

  1. Aggiungi i nuovi percorsi delle risorse alla specifica OpenAPI. Consulta la sezione Modificare una specifica OpenAPI esistente.
  2. Apri il proxy API nell'interfaccia utente e fai clic sulla scheda Sviluppa.
  3. Nel riquadro di navigazione, fai clic su + accanto all'endpoint proxy che desideri aggiornare.
    Viene visualizzata la finestra di dialogo Nuovo flusso condizionale.
  4. Fai clic su Da OpenAPI, se non è già selezionata.
    Se nella specifica OpenAPI sono presenti risorse che non hanno un flusso condizionale corrispondente nel proxy API, vengono elencate nella finestra di dialogo, come mostrato nella figura seguente. Risorse che non sono rappresentate come flussi nell&#39;attuale proxy API. Questo esempio include /loveapis, /ip, /json e /xml.
  5. Seleziona ciascuna delle risorse per cui vuoi aggiungere un flusso condizionale.
  6. Fai clic su Aggiungi.

I flussi condizionali vengono aggiunti al proxy API.

Creazione di una nuova revisione di un proxy API

Crea una nuova revisione di un proxy API, come descritto di seguito.

Edge

Per creare una nuova revisione di un proxy API utilizzando l'interfaccia utente di Edge:

  1. Accedi ad apigee.com/edge.
  2. Seleziona Sviluppa > Proxy API nella barra di navigazione a sinistra.
  3. Fai clic sul proxy API nell'elenco che vuoi copiare.
  4. Seleziona Progetto > Salva come nuova revisione.

Edge classico (private cloud)

Per creare una nuova revisione di un proxy API utilizzando l'interfaccia utente di Edge classica:

  1. Accedi a http://ms-ip:9000, dove http://ms-ip:9000 è l'indirizzo IP o il nome DNS del nodo del server di gestione.ms-ip
  2. Seleziona API > Proxy API nella barra di navigazione in alto.
  3. Fai clic sul proxy API nell'elenco che vuoi copiare.
  4. Seleziona Progetto > Salva come nuova revisione.

Copia di un proxy API

Copia un proxy API esistente in un nuovo proxy API, come descritto di seguito.

Edge

Per copiare un proxy API utilizzando la UI Edge:

  1. Accedi ad apigee.com/edge.
  2. Seleziona Sviluppa > Proxy API nella barra di navigazione a sinistra.
  3. Fai clic sul proxy API nell'elenco da copiare.
  4. Seleziona Progetto > Salva come nuovo proxy API.
  5. Nella finestra di dialogo Salva come nuovo proxy, inserisci il nome del nuovo proxy API.
  6. Fai clic su Aggiungi.

Edge classico (private cloud)

Per copiare un proxy API utilizzando l'interfaccia utente classica di Edge:

  1. Accedi a http://ms-ip:9000, dove ms-ip è l'indirizzo IP o il nome DNS del nodo del server di gestione.
  2. Seleziona API > Proxy API nella barra di navigazione in alto.
  3. Fai clic sul proxy API nell'elenco da copiare.
  4. Seleziona Progetto > Salva come nuovo proxy API.
  5. Nella finestra di dialogo Salva come nuovo proxy, inserisci il nome del nuovo proxy API.
  6. Fai clic su Aggiungi.

Eseguire il backup di un proxy API

Puoi eseguire il backup di un proxy API esistente come insieme di file XML in un bundle di proxy API. Dopo l'esportazione in un bundle, puoi importare il proxy API in un nuovo proxy, come descritto in Importazione di un proxy API da un bundle proxy API in precedenza in questa sezione. Per ulteriori informazioni, vedi Scaricare i proxy API.

Creazione di un proxy API mediante l'API

Per creare un proxy API utilizzando l'API, consulta l'API Proxy API.