Transformando Solicitações de Entrada e Respostas de Saída

Descubra como modificar solicitações de entrada e respostas de saída que estão sendo enviadas de e para serviços de back-end com o API Gateway.

Muitas vezes, há situações em que você deseja que um gateway de API modifique solicitações de entrada antes de enviá-las para serviços de back-end. Da mesma forma, talvez você queira que o gateway de API modifique as respostas retornadas pelos serviços de back-end. Por exemplo:

  • Os serviços de back-end podem exigir solicitações para incluir um conjunto específico de cabeçalhos HTTP (por exemplo, Accept-Language e Accept-Encoding). Para ocultar esse detalhe de implementação dos consumidores de API e clientes de API, você pode usar seu gateway de API para adicionar os cabeçalhos necessários.
  • Os servidores Web geralmente incluem informações completas de versão em cabeçalhos de resposta. Por motivos de segurança, talvez você queira impedir que os consumidores de API e clientes de API saibam sobre a pilha de tecnologia subjacente. Você pode usar o gateway de API para remover cabeçalhos do servidor de respostas.
  • Os serviços de back-end podem incluir informações confidenciais em uma resposta. Você pode usar seu gateway de API para remover essas informações.

Usando um gateway de API, você pode:

  • Adicionar, remover e modificar cabeçalhos em solicitações e respostas.
  • Adicionar, remover e modificar parâmetros de consulta em solicitações.
  • Reescrever URLs de solicitação de um formato público para um formato interno, talvez para suportar aplicativos e migrações legados.

Use políticas de solicitação e resposta para transformar os cabeçalhos e parâmetros de consulta de solicitações de entrada e os cabeçalhos de respostas de saída (consulte Adicionando Políticas de Solicitação e Políticas de Resposta a Especificações de Implantação de API).

Você pode incluir variáveis de contexto nas políticas de solicitação e resposta de transformação de cabeçalho e parâmetro de consulta. A inclusão de variáveis de contexto permite modificar cabeçalhos e parâmetros de consulta com os valores de outros cabeçalhos, parâmetros de consulta, parâmetros de caminho e parâmetros de autenticação. Observe que os valores de valores de variável de contexto são extraídos da solicitação ou resposta original e não são atualizados posteriormente, pois um gateway de API usa uma política de transformação para avaliar uma solicitação ou resposta. Para obter mais informações sobre variáveis de contexto, consulte Adicionando Variáveis de Contexto a Políticas e Definições de Back-End de HTTP.

Se uma solicitação de transformação de cabeçalho ou parâmetro de consulta ou política de resposta resultar em um cabeçalho ou parâmetro de consulta inválido, a política de transformação será ignorada.

Observe que você não pode usar políticas de transformação de cabeçalho para transformar determinados cabeçalhos de solicitação e resposta protegidos. Consulte Cabeçalhos de Solicitação Protegidos e Cabeçalhos de Resposta.

Você pode adicionar políticas de resposta e solicitação de transformação de cabeçalho e parâmetro de consulta a uma especificação de implantação de API:

  • usando a Console
  • editando um arquivo JSON

Conteúdo: