Simular integrações para APIs REST no API Gateway - Amazon API Gateway

Simular integrações para APIs REST no API Gateway

O Amazon API Gateway oferece suporte a integrações simuladas para métodos de API. Esse recurso permite que os desenvolvedores de API gerem respostas de API do API Gateway diretamente, sem necessidade de um backend de integração. Como desenvolvedor de API, você pode usar esse recurso para desbloquear as equipes dependentes que precisam trabalhar com uma API antes que o desenvolvimento do projeto seja concluído. Você também pode usar esse recurso para provisionar uma página de destino para sua API, que pode fornecer uma visão geral e a navegação para a sua API. Para obter um exemplo dessa página de aterrissagem, consulte a solicitação e a resposta de integração do método GET no recurso raiz da API, discutida no exemplo Tutorial: Criar uma API REST importando um exemplo.

Como desenvolvedor de APIs, você decide como o API Gateway responde a uma solicitação de integração simulada. Para isso, você configura a solicitação de integração e a resposta de integração do método para associar uma resposta a um determinado código de status. Para que um método com a integração de simulação retorne uma resposta 200, configure o modelo de mapeamento do corpo da solicitação de integração para retornar o seguinte.

{"statusCode": 200}

Configure uma resposta de integração 200 para ter o seguinte modelo de mapeamento do corpo, por exemplo:

{ "statusCode": 200, "message": "Go ahead without me." }

De forma parecida, para que o método retorne, por exemplo, uma resposta de erro 500, defina o modelo de mapeamento do corpo da solicitação de integração para retornar o seguinte.

{"statusCode": 500}

Defina uma resposta de integração 500 com, por exemplo, o seguinte modelo de mapeamento:

{ "statusCode": 500, "message": "The invoked method is not supported on the API resource." }

Como alternativa, você pode fazer com que um método de integração simulada retorne a resposta de integração padrão sem definir o modelo de mapeamento de solicitação de integração. A resposta de integração padrão é aquela com um HTTP status regex (Regex de status HTTP) indefinido. Certifique-se de que os comportamentos de passagem apropriados estejam definidos.

nota

As integrações simuladas não são destinadas a oferecer suporte a modelos de respostas grandes. Se eles forem necessários ao seu caso de uso, considere usar a integração do Lambda.

Com um modelo de mapeamento de solicitação de integração, você pode fazer com que a lógica do aplicativo decida qual resposta de integração simulada deve ser retornada com base em certas condições. Por exemplo, você pode usar um parâmetro de consulta scope na solicitação recebida para determinar se será retornada uma resposta bem-sucedida ou uma resposta de erro:

{ #if( $input.params('scope') == "internal" ) "statusCode": 200 #else "statusCode": 500 #end }

Dessa forma, o método de integração simulada permite a passagem das chamadas internas, ao mesmo tempo, rejeitando outros tipos de chamadas com uma resposta de erro.

Nesta seção, descrevemos como usar o console do API Gateway para habilitar a integração simulada para um método da API.