Desenvolvimento de proxies de API

Esta página se aplica à Apigee e à Apigee híbrida.

Confira a documentação da Apigee Edge.

Você expõe APIs no Apigee implementando proxies das APIs. Os proxies das APIs dissociam os serviços de back-end da API do app, protegendo esses apps das mudanças de códigos do back-end.

Desenvolva seus proxies de API usando a Apigee no Cloud Code, conforme descrito nas seções a seguir. Consulte também Como gerenciar pastas e arquivos em um espaço de trabalho da Apigee.

Como criar um proxy de API

Para criar um proxy de API usando a Apigee no Cloud Code, crie um espaço de trabalho de desenvolvimento local e siga estas etapas:

  1. Realize uma das seguintes ações:

    • No seu espaço de trabalho, posicione o cursor sobre a pasta apiproxies e clique em Criar o ícone do proxy de API.

      + é exibido quando você posiciona o cursor sobre a pasta apiproxies

    • Selecione View > Command Palette para abrir a paleta de comandos e selecione Cloud Code: Create Apigee proxy bundle.

    O assistente Criar proxy é aberto.

  2. Selecione uma das seguintes opções:

    Tipo Descrição
    Access token-based authentication

    Adiciona a autenticação baseada em OAuth 2.0 ao proxy de API. A Apigee adiciona automaticamente as seguintes políticas ao seu proxy de API:

    • Cota para gerenciar a cota no proxy.
    • AssignMessage para remover a chave de API, fornecida na chamada de API como um parâmetro de consulta, da solicitação encaminhada ao servidor de back-end.
    • OAuthV2 como o método de autenticação.
    API key-based authentication

    Um proxy de API que usa a verificação simples de chaves de API. A Apigee adiciona automaticamente as seguintes políticas ao seu proxy de API:

    • Cota para gerenciar a cota no proxy.
    • VerifyAPIKey para validar chaves de API apresentadas por meio da solicitação de aplicativos.
    • AssignMessage para remover a chave de API, fornecida na chamada de API como um parâmetro de consulta, da solicitação encaminhada ao servidor de back-end.
    Echo request

    Um proxy de API que faz eco de solicitações. Não há back-end de destino/API para esse tipo de proxy e nenhuma autenticação. Você não é solicitado a especificar um URL para o serviço de back-end (Target (Existing API)), e a configuração de destino padrão não está incluída.

    Simple reverse proxy

    Um proxy de API que transmite solicitações para um destino de back-end. Ela não inclui autenticação, então as solicitações são transmitidas para o back-end sem nenhuma verificação de segurança.

    OpenAPI 3.0 spec

    Crie um proxy carregando uma especificação OpenAPI 3.0. Para mais informações, consulte a Iniciativa OpenAPI.

  3. Consulte Campos primários do proxy da API para informações sobre os campos, como o caminho base, necessários para criar cada tipo de proxy. Responda a cada uma das solicitações e pressione Enter para confirmar e continuar ou Esc para cancelar o assistente.

Depois de concluir as etapas no assistente, a nova pasta apiproxy-name será adicionada em apiproxies no Apigee Explorer. Cada pasta de proxy da API é estruturada conforme descrito em Estrutura do diretório de configuração de proxy da API.

Confira a seguir um exemplo da configuração padrão criada para um proxy de API criado com o tipo API key-based authentication.

Estrutura de pastas de um proxy de autenticação baseado em chave de API

Para uma descrição da configuração padrão, consulte Como explorar a configuração do proxy da API padrão.

Como explorar a configuração padrão de proxy da API

A tabela a seguir resume o conteúdo incluído na configuração padrão quando você cria um proxy de API com base no tipo de proxy da API e nas opções de autenticação selecionadas.

Arquivo de configuração
Proxy reverso simples
Solicitação de eco
Autenticação de token de acesso (OAuthV2)
Autenticação de chave de API
proxies/default.xml
Configuração padrão do endpoint do proxy.
targets/default.xml
Configuração padrão do endpoint de destino.
 
impose-quota.xml
Política de cotas para definir uma cota padrão.
   
remove-header-authorization.xml
Política "AstMessage" para remover o cabeçalho Authorization que é transmitido para autenticação.
   
 
remove-query-param-apikey.xml
Política AsignMessage para remover o parâmetro de consulta apikey transmitido para autenticação.
     
verify-api-key.xml
Política VerifyAPIKey para aplicar a verificação de chaves de API.
     
verify-oauth-v2-access-token.xml
OAuthV2 para validar os tokens de acesso do OAuth V2.
   
 

Como fazer upload de um pacote de proxy de API

Para fazer upload de um pacote de proxy de API para a Apigee no Cloud Code:

  1. Realize uma das seguintes ações:

    • No seu espaço de trabalho da Apigee, posicione o cursor sobre a pasta apiproxies e clique em Ícone do pacote de proxy de API para importação.

    • Selecione View > Command Palette para abrir a paleta de comandos e selecione Cloud Code: Import Apigee proxy bundle.

  2. Acesse o pacote proxy de API que você quer enviar e clique em Selecionar. O pacote de proxy da API precisa ser estruturado conforme descrito em Estrutura de diretórios de configuração do proxy de API.

  3. (Opcional) Por padrão, o nome do arquivo ZIP menos sua extensão é usado para o nome do proxy da API. Se o nome não for exclusivo, você deverá digitar um nome exclusivo.

A pasta apiproxy-name enviada é adicionada em apiproxies no seu espaço de trabalho.

Como gerenciar endpoints de proxy

Conforme descrito em O que é um proxy de API?, um endpoint de proxy (ProxyEndpoint) define a maneira como os aplicativos clientes consomem suas APIs. Você configura o endpoint do proxy para definir o URL do proxy de API. O endpoint do proxy também determina se os apps acessam o proxy de API por HTTP ou HTTPS. É possível anexar políticas ao endpoint de proxy para aplicar segurança, verificações de cota e outros tipos de controle de acesso e limitação de taxa.

Crie e configure endpoints de proxy conforme descrito nas seções a seguir.

Como criar endpoints de proxy

Quando você cria um proxy de API, um endpoint de proxy padrão é adicionado à configuração de proxy da API. Para mais informações, consulte Como explorar a configuração de proxy da API padrão. É possível criar outros endpoints de proxy, conforme necessário.

Para criar um endpoint de proxy usando o Apigee no Cloud Code:

  1. No seu espaço de trabalho do Apigee, realize uma das seguintes ações:

    • Posicione o cursor sobre uma das seguintes pastas, clique em Ícone "Criar endpoint de proxy" e selecione Criar endpoint do proxy:
      • Pacote de proxy apiproxy-name
      • apiproxy-name/apiproxy
    • Posicione o cursor sobre a pasta apiproxy-name/apiproxy/proxies e clique em Ícone "Criar endpoint de proxy".

    O assistente Criar endpoint do proxy é aberto.

  2. Insira os valores para o próximo conjunto de prompts. Pressione Enter depois de confirmar para prosseguir ou Esc para cancelar.

    Campo Descrição
    Proxy endpoint name Nome usado para identificar o endpoint do proxy.
    API proxy base path Parte do URL usado para fazer solicitações à sua API. O Edge usa o URL para corresponder e rotear solicitações de entrada para o proxy da API apropriado.
    Target endpoint Selecione no target ou default. Consulte Elementos de configuração do ProxyEndpoint para mais informações.

O endpoint é criado e adicionado à pasta apiproxy-name/apiproxy/proxies no Apigee Explorer e aberto no editor. Configure o endpoint do proxy, conforme descrito na seção a seguir.

Como configurar endpoints de proxy

Para configurar endpoints de proxy, consulte as seções a seguir:

Como gerenciar endpoints de destino

Conforme descrito em O que é um proxy de API?, um endpoint de destino (TargetEndpoint) define a maneira como o proxy de API interage com seus serviços de back-end. Você configura o endpoint de destino para encaminhar solicitações ao serviço de back-end apropriado e definir configurações de segurança, protocolos HTTP ou HTTPS e outras informações de conexão. Você pode anexar políticas ao TargetEndpoint para garantir que as mensagens de resposta sejam formatadas corretamente para o aplicativo que fez a solicitação inicial.

Crie e configure endpoints de destino conforme descrito nesta seção.

Como criar endpoints de destino

Quando você cria um proxy de API reverso, um endpoint de destino padrão é adicionado à configuração do proxy da API. Ao criar um proxy de API sem destino de back-end, somente o endpoint de proxy padrão é adicionado à configuração de proxy da API. Para mais informações, consulte Como explorar a configuração proxy de API padrão.

Crie endpoints de destino, conforme necessário.

Para criar um endpoint de destino usando a Apigee no Cloud Code:

  1. No seu espaço de trabalho do Apigee, realize uma das seguintes ações:

    • Posicione o cursor sobre uma das seguintes pastas, clique em Ícone de criação de endpoint de destino e selecione Criar endpoint de destino:
      • Pacote de proxy apiproxy-name
      • apiproxy-name/apiproxy
    • Posicione o cursor sobre a pasta apiproxy-name/apiproxy/targets e clique em Ícone de criação de endpoint de destino.

    O assistente Criar endpoint de destino é aberto.

  2. Execute as etapas a seguir com base no tipo de endpoint de destino que você quer criar:

    Tipo Etapas
    Destino HTTP(s) externo

    Para definir um destino HTTP(s) externo:

    1. Selecione Destino HTTP(s).
    2. Digite o nome do endpoint de destino em Nome do endpoint de destino.
    3. Digite o URL do serviço de back-end que este endpoint de destino invoca em URL de destino do back-end.

    Para mais informações, consulte Como determinar o URL do endpoint de destino.

    Cadeia de proxies

    Para definir um proxy de API implantado localmente como seu destino:

    1. Selecione Cadeia de proxy.
    2. Digite o nome do endpoint de destino em Nome do endpoint de destino.
    3. Selecione um proxy de API.
    4. Selecione o endpoint do proxy.

    Para mais informações, consulte Como unir proxies.

    Meta de balanceamento de carga

    Para definir uma meta de balanceamento de carga usando servidores de destino definidos no ambiente:

    1. Selecione Meta com carga balanceada.
    2. Digite o nome do endpoint de destino em Nome do endpoint de destino.

    Para mais informações, consulte Como configurar um TargetEndpoint para balancear a carga em TargetServers nomeados.

O endpoint de destino é criado e adicionado à pasta apiproxy-name/apiproxy/targets e aberto no editor. Configure o endpoint de destino, conforme descrito na seção a seguir.

Como configurar endpoints de destino

Configure os endpoints de destino, conforme descrito nos tópicos a seguir.