Preciso que a minha API REST do Amazon API Gateway passe parâmetros da string de consulta para uma função de backend do AWS Lambda ou um endpoint HTTP.
Breve descrição
Para configurar uma API REST para passar parâmetros da string de consulta para uma função de back-end do AWS Lambda, use uma integração personalizada do Lambda.
Para passar parâmetros da string de consulta para um endpoint HTTP, use uma integração HTTP personalizada.
Importante: certifique-se de fornecer os dados de entrada como carga útil da solicitação de integração. É uma prática recomendada usar um modelo de mapeamento para fornecer a carga útil. Para mais informações, consulte Exemplos de mapeamento de parâmetros para APIs REST no API Gateway.
Resolução
Passar parâmetros de string de consulta para uma função de backend do Lambda
Conclua as etapas a seguir:
- Abra o console da API Gateway e escolha sua API.
- No painel Recursos, escolha o método HTTP configurado.
Observação: se houver mais de um método HTTP configurado para a API, repita essas etapas para cada método.
- No painel Execução do método, escolha Solicitação de método e, em seguida, Editar.
- Expanda a lista suspensa Parâmetros da string de consulta do URL e escolha Adicionar string de consulta.
- No campo Nome, insira pet.
- Escolha a caixa de seleção Obrigatório e escolha Salvar.
- Escolha a guia Solicitação de integração e, em seguida, Editar.
- Expanda Modelos de mapeamento e escolha Adicionar modelo de mapeamento.
- No campo Content-Type, insira application/json.
- No editor de modelos de mapeamento, copie e substitua o script atual pelo seguinte código:
{ "pet": "$input.params('pet')"
}
Observação: para mais informações, consulte Variáveis de entrada.
Escolha Salvar e, em seguida, Implantar a API.
Para testar o novo endpoint da API, execute o seguinte comando curl:
curl -X GET https://jp58lnf5vh.execute-api.us-west-2.amazonaws.com/dev/lambda-non-proxy?pet=dog
Importante: certifique-se de que o comando curl tenha o parâmetro da string de consulta pet=dog.
Passar parâmetros da string de consulta para um endpoint HTTP
Conclua as etapas a seguir:
- Abra o console da API Gateway e escolha sua API.
- No painel Recursos, escolha o método HTTP configurado.
Observação: se houver mais de um método HTTP configurado para a API, repita essas etapas para cada método.
- No painel Execução do método, escolha Solicitação de método e, em seguida, Editar.
- Expanda a lista suspensa Parâmetros da string de consulta do URL e escolha Adicionar string de consulta.
- No campo Nome, insira type e escolha Salvar.
- Escolha a guia Solicitação de integração e, em seguida, Editar.
- Expanda a seção Parâmetros da string de consulta do URL.
- No campo Nome, insira type.
- No campo Mapeado de, insira method.request.querystring.type.
- Escolha Salvar e, em seguida, Implantar a API.
- Para testar o novo endpoint da API, execute o seguinte comando curl:
curl -X GET https://jp58lnf5vh.execute-api.us-west-2.amazonaws.com/dev/http-endpoint?pet=dog
Importante: certifique-se de que o comando curl tenha o parâmetro da string de consulta pet=dog.
Informações relacionadas
Tutorial: Crie uma API REST com uma integração de proxy do Lambda
Tutorial: Crie uma API REST com uma integração de não proxy do Lambda
Tutorial: Crie uma API REST com uma integração de proxy de HTTP
Tutorial: Crie uma API REST com uma integração de não proxy de HTTP