Eseguire il proxy di un servizio SOAP

Stai visualizzando la documentazione di Apigee Edge.
Vai alla sezione Documentazione di Apigee X.
Informazioni

Cosa imparerai a fare

Tramite questo tutorial imparerai a:

  • Genera un proxy API Edge da un file WSDL.
  • Scopri la differenza tra un tipo di proxy SOAP RESTful e un SOAP passthrough proxy.

In questo tutorial imparerai a posizionare un proxy API Edge davanti a un server web basato su SOAP completamente gestito di Google Cloud.

Questo tutorial illustra come generare una nuova API RESTful a fronte di un indirizzo IP completamente gestito di Google Cloud. Sebbene non sia descritto in dettaglio qui, puoi anche generare un proxy pass-through che accetta un payload SOAP e lo passa al servizio di backend.

Che cosa ti serve

Creazione del proxy in corso...

Qui farai in modo che Edge generi il proxy da posizionare davanti a un servizio SOAP. Esistono due tipi di proxy API SOAP:

  • Il tipo di proxy REST-SOAP-REST genera una nuova API RESTful con una traduzione lo strato SOAP. I client lo chiamano come gli altri servizi RESTful, passando la query i parametri richiesti dal servizio di backend. Edge lo traduce nel payload SOAP previsto dal servizio.
  • Il tipo di proxy proxy pass-through consente ai client di passare semplicemente un payload SOAP. In questo modo, le chiamate ai servizi SOAP possono trarre vantaggio dalle funzionalità di gestione perimetrale.

Edge

Per eseguire il proxy di un servizio SOAP utilizzando la UI Edge:

  1. Accedi a apigee.com/edge.
  2. Seleziona Sviluppo > Proxy API nella barra di navigazione a sinistra.
  3. Fai clic su +Proxy.
  4. Fai clic su Servizio SOAP.
  5. Nella pagina dei dettagli del proxy, inserisci quanto segue:

    Campo Descrizione
    Sorgente WSDL

    Seleziona: URL

    Copia e incolla il seguente URL WSLD nel campo Inserisci URL:

    https://ws.cdyne.com/delayedstockquote/delayedstockquote.asmx?wsdl

    Fai clic su Convalida

    Apigee Edge recupera il file WSDL e lo legge per scoprire l'elenco delle operazioni supportato dal servizio SOAP.

    Nome

    Lascia così com'è: delayedstockquote

    Questo è il nome del proxy API che stai creando.

    Percorso base Lascia così com'è: /delayedstockquote
    Descrizione Se vuoi, puoi aggiungere una descrizione, ad esempio: Proxy API WSDL quotazioni
  6. Fai clic su Avanti.
  7. Nella pagina Criteri comuni, in Sicurezza: autorizzazione, seleziona Passthrough (nessuna autorizzazione).
  8. Fai clic su Avanti.
  9. Nella pagina Operazioni WSDL, seleziona: REST to SOAP to REST.

    Una volta selezionato il tipo di proxy, Edge visualizza l'elenco delle operazioni per le quali verranno generati percorsi dell'API REST. Questo elenco ti consente di scegliere tra le operazioni trovate nel file WSDL (nel caso in cui sia presente un l'insieme che stai cercando). Nota che la tabella mostra anche le risorse Il client REST può utilizzare per chiamare il servizio SOAP di backend.

    Lascia invariate tutte le altre selezioni della pagina.

  10. Fai clic su Avanti.
  11. Accetta le impostazioni predefinite dell'host virtuale facendo clic su Avanti.
  12. Nella pagina Riepilogo, in Deployment facoltativo, fai clic su Test e poi su Crea ed esegui il deployment.

    Edge genera un proxy API RESTful e ne esegue il deployment nell'ambiente test. Dalla WSDL, determina la operazioni supportate, parametri di input e così via. Edge suggerisce il metodo HTTP da utilizzare per ogni operazione. In genere, Edge converte le operazioni in richieste GET, che il vantaggio di essere memorizzabile nella cache. Edge configura anche l'endpoint di destinazione del backend, può variare in base all'operazione SOAP.

    A meno che non stai personalizzando il nuovo proxy API (e non hai seguito questo tutorial), è tutto esiste. Puoi passare al test del nuovo proxy API.

di Gemini Advanced.

Perimetrale classico (Private Cloud)

Per eseguire il proxy di un servizio SOAP utilizzando la UI Edge classica:

  1. Accedi a http://ms-ip:9000, dove ms-ip è Indirizzo IP o nome DNS del nodo del server di gestione.
  2. Seleziona API > Proxy API nella barra di navigazione superiore.
  3. Fai clic su + Proxy API.
  4. Fai clic su Servizio SOAP.
  5. Nella pagina dei dettagli del proxy, inserisci quanto segue:

    Campo Descrizione
    WSDL

    Seleziona URL di esempio.

    Quindi seleziona:
    ...delayedstockquote.asmx?WSDL

    Fai clic su Convalida

    Apigee Edge recupera il file WSDL e lo legge per scoprire l'elenco delle operazioni supportato dal servizio SOAP.

    Nome proxy

    Inserisci: delayedstockquote

    Questo è il nome del proxy che stai creando.

    Percorso di base del proxy e Descrizione Lascia invariato.
  6. Fai clic su Avanti.
  7. Nella pagina WSDL, effettua le seguenti selezioni:
    In questo campo fai questo
    Tipo di proxy API

    Seleziona: REST per SOAP a REST.

    Una volta selezionato il tipo di proxy, Edge visualizza l'elenco delle operazioni per le quali verranno generati percorsi dell'API REST, come mostrato qui. Questo elenco ti offre la possibilità scegliere tra le operazioni trovate nel file WSDL (nel caso in cui sia presente un l'insieme che stai cercando). Nota che la tabella mostra anche le risorse Il client REST può utilizzare per chiamare il servizio SOAP di backend.

    Per ora, lascia selezionato il primo insieme di operazioni.

    Tipo di porta: DelayedStockQuoteSoap Seleziona tutte e tre le operazioni WSDL. Non modificare le altre impostazioni.

  8. Fai clic su Avanti.
  9. Nella pagina Sicurezza, seleziona Passthrough (nessuno).
  10. Fai clic su Avanti.
  11. Accetta i valori predefiniti dell'host virtuale e fai clic su Avanti.
  12. Nella pagina Build, accetta i valori predefiniti e fai clic su Build and Deploy (Crea ed esegui il deployment) in modo che Edge inizi a generare il proxy.

    Edge genera un proxy API RESTful. Dalla WSDL, determina la operazioni supportate, parametri di input e così via. Edge suggerisce il metodo HTTP da utilizzare per ogni operazione. In genere, Edge converte le operazioni in richieste GET, che il vantaggio di essere memorizzabile nella cache. Edge configura anche l'endpoint di destinazione del backend, può variare in base all'operazione SOAP.

    A meno che tu non stia personalizzando il nuovo proxy (e non abbiate seguito questo tutorial), è tutto esiste. Puoi passare ai test del nuovo proxy.

di Gemini Advanced.

Test del proxy in corso...

Per provare il proxy che hai creato, apri un prompt dei comandi e utilizza cURL. Digita il comando di seguito, dove:

  • ORG è il nome dell'organizzazione Edge in cui hai creato il proxy.
  • ENV è l'ambiente in cui viene eseguito il deployment del proxy.
  • DOMINIO corrisponde all'istanza Edge che stai utilizzando.
curl "https://{ORG}-{ENV}.{DOMAIN}/delayedstockquote/quote?StockSymbol=GOOG&LicenseKey=0"

Ad esempio, se la tua organizzazione è docfood, l'ambiente è test e stai utilizzando il cloud Edge Enterprise, eseguirai un comando come questo:

curl "https://docfood-test.apigee.net/delayedstockquote/quote?StockSymbol=GOOG&LicenseKey=0"

Se hai inserito GOOG per il parametro di query StockSymbol, dovresti ottenere la quotazione corrente delle azioni Alphabet Inc. di Classe C. Ad esempio:

{  
   "GetQuoteResponse":{  
      "GetQuoteResult":{  
         "StockSymbol":"GOOG",
         "LastTradeAmount":819.55,
         "LastTradeDateTime":"2017-02-13T14:33:00",
         "StockChange":5.88,
         "OpenAmount":816.0,
         "DayHigh":820.96,
         "DayLow":815.49,
         "StockVolume":785064,
         "PrevCls":813.67,
         "ChangePercent":"+0.72%",
         "FiftyTwoWeekRange":"663.28 - 841.95",
         "EarnPerShare":27.88,
         "PE":29.4,
         "CompanyName":"Alphabet Inc.",
         "QuoteError":false
      }
   }
}

Scaricare l'API OpenAPI generata automaticamente Specifiche

Quando esegui il proxy di un servizio SOAP utilizzando "Da REST a SOAP a REST", Edge genera automaticamente una specifica OpenAPI. Puoi utilizzare lo Specifica OpenAPI per generare la documentazione dell'API per l'API.

Per ottenere la specifica OpenAPI, visita semplicemente questo URL:

curl https://{ORG}-{ENV}.{DOMAIN}/delayedstockquote/openapi.json

Crediti aggiuntivi: come scopri quali risorse, verbi e parametri di query usare?

Nella chiamata API di prova, hai utilizzato una risorsa e parametri di query specifici nella chiamata cURL al servizio SOAP di backend. Ma come si fa a scoprirlo da soli?

Risorsa e verbo

Nella procedura guidata del proxy API durante la creazione del proxy, hai visto come le operazioni SOAP viene mappato ai verbi e alle risorse dell'API. Ma se non le scrivessi, ecco come potresti scoprilo dopo la creazione del proxy.

Nella scheda Sviluppo del proxy API, nel riquadro di navigazione a sinistra vedrai una dei flussi all'interno degli endpoint proxy. Fai clic sul flusso che ti interessa. Ad esempio: il flusso GetQuote è una buona candidata. Quindi visualizza il file XML nel riquadro Codice, che mostra il percorso della risorsa e il verbo per il flusso in <Condition> : /quote e GET.

Parametri di query

Con il flusso GetQuote selezionato, fai clic sul primo criterio nella vista del flusso. Deve essere un criterio Estrai variabili che acquisisce i parametri di query che sono dovrebbe essere superato: StockSymbol e LicenseKey. (Se utilizzi un server web cerca il servizio SOAP, ti dice cosa passare per LicenseKey.

I parametri di query acquisiti vengono salvati come variabili e utilizzati dal criterio successivo per per creare il messaggio SOAP.