Proxy de um serviço SOAP

Esta é a documentação do Apigee Edge.
Acesse Documentação da Apigee X.
informações

O que você vai aprender

Neste tutorial, você aprenderá a:

  • Gere um proxy da API Edge com base em um arquivo WSDL.
  • Conhecer a diferença entre um tipo de proxy SOAP RESTful e um SOAP de passagem proxy.

Neste tutorial, você vai aprender a colocar um proxy da API Edge na frente de uma interface da Web baseada em SOAP. serviço.

Este tutorial mostra como gerar uma nova API RESTful na frente de seus blocos de serviço. Embora não esteja descrito em detalhes aqui, também é possível gerar um proxy de passagem que aceita um payload de SOAP e o passa para o serviço de back-end.

O que é necessário

Como criar o proxy

Aqui, o Edge gera o proxy que ficará na frente de um serviço SOAP. Há dois tipos de proxies da API SOAP:

  • O tipo de proxy REST-SOAP-REST gera uma nova API RESTful com uma para SOAP. Os clientes a chamam como outros serviços RESTful, passando a consulta parâmetros necessários para o serviço de back-end. O Edge converte isso no payload de SOAP que o serviço espera.
  • O tipo de proxy de proxy de passagem permite que os clientes simplesmente transmitam um payload de SOAP. Essa é uma maneira de fazer com que as chamadas de serviço SOAP se beneficiem dos recursos de gerenciamento de borda.

Edge

Para fazer o proxy de um serviço SOAP usando a interface do Edge:

  1. Faça login em apigee.com/edge.
  2. Selecione Develop > API Proxies na barra de navegação à esquerda.
  3. Clique em +Proxy.
  4. Clique em Serviço SOAP.
  5. Na página "Detalhes do proxy", digite o seguinte:

    Campo Descrição
    Origem WSDL

    Selecionar: URL

    Copie e cole o seguinte URL do WSLD no campo Inserir URL:

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

    Clique em Validar

    O Apigee Edge recebe e lê o arquivo WSDL para descobrir a lista de operações com suporte do serviço SOAP.

    Nome

    Deixe como está: delayedstockquote

    Esse é o nome do proxy de API que você está criando.

    Caminho base Deixe como está: /delayedstockquote
    Descrição Se quiser, adicione uma descrição, como: Proxy da API WSDL de cotação de estoque
  6. Clique em Próxima.
  7. Na página Políticas comuns, em Segurança: autorização, selecione Passagem (sem autorização).
  8. Clique em Próxima.
  9. Na página Operações WSDL, selecione: REST to SOAP to REST.

    Depois de selecionar o tipo de proxy, o Edge exibirá a lista de operações para as quais ele vai gerar caminhos da API REST. Essa lista permite que você selecionar entre as operações encontradas no WSDL (caso você tenha um que você está procurando). A tabela também exibe recursos que um O cliente REST pode usar para chamar o serviço SOAP de back-end.

    Deixe todas as outras seleções na página como estão.

  10. Clique em Próxima.
  11. Aceite os padrões do Virtual Host clicando em Next.
  12. Na página Resumo, em "Implantação opcional", clique em Testar e, depois, em Criar e implantar.

    O Edge gera um proxy de API RESTful e o implanta no ambiente test. No WSDL, ele determina os critérios operações aceitas, parâmetros de entrada etc. O Edge sugere qual método HTTP usar para cada operação. Normalmente, o Edge converte operações em solicitações GET, que têm a vantagem de poder armazenar em cache. O Edge também configura o endpoint de destino do back-end, podem variar por operação de SOAP.

    A menos que você esteja personalizando o novo proxy de API (e não esteja neste tutorial), isso é tudo. que existem. Agora você pode testar o novo proxy de API.

.

Edge clássico (nuvem privada)

Para fazer o proxy de um serviço SOAP usando a IU clássica do Edge:

  1. Faça login em http://ms-ip:9000, em que ms-ip é o endereço IP ou o nome DNS do nó do servidor de gerenciamento.
  2. Selecione APIs > Proxies de API na barra de navegação superior.
  3. Clique em + Proxy de API.
  4. Clique em Serviço SOAP.
  5. Na página "Detalhes do proxy", digite o seguinte:

    Campo Descrição
    WSDL

    Selecione: URL de exemplo

    Depois, selecione:
    ...delayedstockquote.asmx?WSDL

    Clique em Validar

    O Apigee Edge recebe e lê o arquivo WSDL para descobrir a lista de operações com suporte do serviço SOAP.

    Proxy Name

    Insira: delayedstockquote

    Esse é o nome do proxy que você está criando.

    Proxy Base Path e Description Deixe como está.
  6. Clique em Próxima.
  7. Na página WSDL, faça estas seleções:
    Neste campo faça isso
    Tipo de proxy da API

    Selecione: REST to SOAP to REST

    Depois de selecionar o tipo de proxy, o Edge exibirá a lista de operações para as quais ele vai gerar caminhos da API REST, como mostrado aqui. Essa lista dá a você a chance de selecionar entre as operações encontradas no WSDL (caso você tenha um que você está procurando). A tabela também exibe recursos que um O cliente REST pode usar para chamar o serviço SOAP de back-end.

    Por enquanto, deixe o primeiro conjunto de operações selecionado.

    Tipo de porta: DelayedStockquoteSoap Selecione as três operações WSDL. Deixe as outras configurações como estão.

  8. Clique em Próxima.
  9. Na página "Segurança", selecione Passar por (nenhum).
  10. Clique em Próxima.
  11. Aceite os padrões do Virtual Host e clique em Next.
  12. Na página "Build", aceite os padrões e clique em Build and Deploy para faça com que o Edge comece a gerar o proxy.

    O Edge gera um proxy de API RESTful. No WSDL, ele determina os critérios operações aceitas, parâmetros de entrada etc. O Edge sugere qual método HTTP usar para cada operação. Normalmente, o Edge converte operações em solicitações GET, que têm a vantagem de poder armazenar em cache. O Edge também configura o endpoint de destino do back-end, podem variar por operação de SOAP.

    A menos que você esteja personalizando o novo proxy (e não esteja neste tutorial), isso é tudo. que existem. Prossiga para o teste do novo proxy.

.

Como testar o proxy

Para testar o proxy que você criou, abra um prompt de comando e use cURL. Digite o comando abaixo, em que:

  • ORG é o nome da organização de borda em que você criou o proxy.
  • ENV é o ambiente em que o proxy é implantado.
  • DOMAIN corresponde à instância do Edge que você está usando.
curl "https://{ORG}-{ENV}.{DOMAIN}/delayedstockquote/quote?StockSymbol=GOOG&LicenseKey=0"

Por exemplo, se a organização for docfood, o ambiente será test e estiver usando a nuvem corporativa do Edge, você executaria um comando como isso:

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

Se você inseriu GOOG para o parâmetro de consulta StockSymbol, o preço atual das ações da Alphabet Inc. Classe C. Exemplo:

{  
   "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
      }
   }
}

Receber a OpenAPI gerada automaticamente Especificação

Quando você faz o proxy de um serviço SOAP usando "REST para SOAP para REST", O Edge gera automaticamente uma especificação OpenAPI. Você pode usar o Especificação da OpenAPI para gerar a documentação da API.

Para conseguir a especificação da OpenAPI, acesse este URL:

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

Crédito extra: como você descobre quais parâmetros de recurso, verbo e consulta usar?

Na chamada de API de teste, você usou um recurso e parâmetros de consulta específicos na chamada de cURL. ao serviço SOAP de back-end. Mas como você descobriria isso por conta própria?

Recurso e verbo

No assistente de proxy de API, quando estava criando o proxy, você viu como as operações de SOAP mapearia para os verbos e recursos da API. Mas se você não anotou isso, veja como você descobrir depois que o proxy for criado.

Na guia Desenvolver do proxy de API, no painel esquerdo do navegador, você verá uma lista de fluxos em endpoints de proxy. Clique no fluxo em que você tem interesse. Por exemplo: o fluxo GetQuote é um bom candidato. Em seguida, visualize o XML no painel Code, que mostra o caminho do recurso e o verbo do fluxo em <Condition> : /quote e GET.

Parâmetros de consulta

Com o fluxo GetQuote selecionado, clique na primeira política na visualização de fluxo. É preciso usar uma política de extração de variáveis que capture parâmetros de consulta que sejam precisa ser transmitido: StockSymbol e LicenseKey. Se você fizer um pesquisar o serviço SOAP, ele informará o que transmitir para a LicenseKey.)

Os parâmetros de consulta capturados são salvos como variáveis e usados pela próxima política para construa a mensagem SOAP.