Ativar a integração simulada usando o console do API Gateway
É necessário ter o método disponível no API Gateway. Siga as instruções em Tutorial: Crie uma API REST com uma integração de não proxy de HTTP.
-
Selecione um recurso de API e Criar método.
Para configurar o método, faça o seguinte:
Em Tipo de método, selecione um método.
Em Tipo de integração, selecione Simulação.
Escolha Criar método.
Na guia Solicitação de método, em Configurações de solicitação de método, selecione Editar.
-
Selecione Parâmetros de string de consulta de URL. Selecione Adicionar string de consulta e, em Nome, insira
scope
. Esse parâmetro de consulta determina se o autor da chamada é interno ou não. -
Escolha Salvar.
-
Na guia Resposta do método, selecione Criar resposta e faça o seguinte:
-
Em Status HTTP, insira
500
. Escolha Salvar.
-
-
Na guia Solicitação de integração, em Configurações de solicitação de integração, selecione Editar.
-
Selecione Modelos de mapeamento e, depois, faça o seguinte:
Escolha Add mapping template (Adicionar modelo de mapeamento).
Em Tipo de conteúdo, insira
application/json
.Em Corpo do modelo, insira o seguinte:
{ #if( $input.params('scope') == "internal" ) "statusCode": 200 #else "statusCode": 500 #end }
Escolha Salvar.
-
Na guia Resposta de integração, em Padrão - Resposta, selecione Editar.
-
Selecione Modelos de mapeamento e, depois, faça o seguinte:
Em Tipo de conteúdo, insira
application/json
.Em Corpo do modelo, insira o seguinte:
{ "statusCode": 200, "message": "Go ahead without me" }
Escolha Salvar.
-
Selecione Criar resposta.
Para criar uma resposta 500, faça o seguinte:
-
Em HTTP status regex (Regex de status HTTP), insira
5\d{2}
. Em Status de resposta do método, selecione
500
.Escolha Salvar.
-
Em 5\d{2} - Resposta, selecione Editar.
Selecione Modelos de mapeamento e, depois, Adicionar modelo de mapeamento.
Em Tipo de conteúdo, insira
application/json
.Em Corpo do modelo, insira o seguinte:
{ "statusCode": 500, "message": "The invoked method is not supported on the API resource." }
Escolha Salvar.
-
-
Selecione a guia Testar. Talvez seja necessário selecionar o botão de seta para a direita para mostrar a guia. Para testar a integração simulada, faça o seguinte:
-
Digite
scope=internal
em Strings de consulta. Escolha Test (Testar). O resultado do teste mostra:Request: /?scope=internal Status: 200 Latency: 26 ms Response Body { "statusCode": 200, "message": "Go ahead without me" } Response Headers {"Content-Type":"application/json"}
-
Digite
scope=public
emQuery strings
ou deixe em branco. Escolha Test (Testar). O resultado do teste mostra:Request: / Status: 500 Latency: 16 ms Response Body { "statusCode": 500, "message": "The invoked method is not supported on the API resource." } Response Headers {"Content-Type":"application/json"}
-
Você também pode retornar os cabeçalhos em uma resposta de integração simulada, adicionando primeiro um cabeçalho à resposta de método e, em seguida, configurando um mapeamento de cabeçalho na resposta de integração. Na verdade, é assim que o console do API Gateway permite o suporte a CORS ao retornar os cabeçalhos necessários do CORS.