Configurar um método usando o console do API Gateway - Amazon API Gateway

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Configurar um método usando o console do API Gateway

Antes de configurar um método de API, verifique o seguinte:

Configurar uma solicitação de método do API Gateway no console do API Gateway

Para usar o console do API Gateway para especificar a solicitação/resposta de método de uma API e configurar a maneira como o método autorizará solicitações, siga estas instruções.

nota

Estas instruções supõem que você já concluiu as etapas em Configurar uma solicitação de integração de API usando o console do API Gateway. Elas são mais usadas para complementar as discussões apresentadas em Criar uma API REST do API Gateway com integração do Lambda.

  1. No painel Recursos, escolha seu método e, em seguida, escolha a guia Solicitação de método.

  2. Na seção Configurações de solicitação de método, selecione Editar.

  3. Em Autorização, selecione um autorizador disponível.

    1. Para habilitar o acesso aberto ao método para qualquer usuário, selecione Nenhum. Essa etapa poderá ser ignorada se a configuração padrão não tiver sido alterada.

    2. Para usar permissões do IAM para controlar o acesso do cliente ao método, selecione AWS_IAM. Com essa opção, somente os usuários das funções do IAM com a política do IAM correta anexada terão permissão para chamar esse método.

      Para criar a função do IAM, especifique uma política de acesso com um formato semelhante ao seguinte:

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "execute-api:Invoke" ], "Resource": [ "resource-statement" ] } ] }

      Nessa política de acesso, resource-statement é o valor do campo ARN, na seção Authorization Settings (Configurações da autorização). Para obter mais informações sobre como definir as permissões do IAM, consulte Controlar o acesso a uma API com permissões do IAM.

      Para criar a função do IAM, você pode adaptar as instruções em “Como criar a função de invocação do Lambda e sua política” e “Como criar a função de execução do Lambda e sua política” na seção Criar funções do Lambda do Criar uma API REST do API Gateway com integração do Lambda.

    3. Para usar um autorizador do Lambda, selecione um autorizador de solicitação ou token. Crie um autorizador do Lambda para que essa opção seja exibida no menu suspenso. Para obter informações sobre como criar um autorizador do Lambda, consulte Usar os autorizadores do API Gateway Lambda.

    4. Para usar um grupo de usuários do Amazon Cognito, escolha um grupo de usuários disponíveis em Cognito user pool authorizers (Autorizadores do grupo de usuários do Cognito). Crie um grupo de usuários no Amazon Cognito e um autorizador do grupo de usuários do Amazon Cognito no API Gateway para que essa opção seja exibida no menu suspenso. Para obter informações sobre como criar um autorizador do grupo de usuários do Amazon Cognito, consulte Controlar o acesso a uma API REST usando um grupo de usuários do Amazon Cognito como autorizador.

  4. Para especificar a validação da solicitação, selecione um valor no menu suspenso Validador de solicitação. Para desativar a validação da solicitação, selecione Nenhuma. Para obter mais informações sobre cada opção, consulte Usar a validação de solicitação no API Gateway.

  5. Selecione Chave de API obrigatória para exigir uma chave de API. Quando ativadas, as chaves de APIs são usadas em planos de uso para controlar o tráfego do cliente.

  6. (Opcional) Para atribuir um nome da operação em um SDK do Java dessa API, gerada pelo API Gateway, em Nome da operação, digite um nome. Por exemplo, para a solicitação de método de GET /pets/{petId}, o nome da operação de Java SDK correspondente é, por padrão,GetPetsPetId. Esse nome é construído a partir do verbo HTTP do método (GET) e os nomes de variáveis de caminho de recurso (Pets e PetId). Se você definir o nome da operação como getPetById, o nome da operação de SDK se tornará GetPetById.

  7. Para adicionar um parâmetro de string de consulta ao método, faça o seguinte:

    1. Selecione Parâmetros de string de consulta de URL e escolha Adicionar string de consulta.

    2. Em Nome, digite o nome do parâmetro de string de consulta.

    3. Selecione Obrigatório se o parâmetro de string de consulta recém-criado precisar ser usado para a validação de solicitação. Para obter mais informações sobre a validação de solicitação, consulte Usar a validação de solicitação no API Gateway.

    4. Selecione Armazenamento em cache se o parâmetro de string de consulta recém-criado precisar ser usado como parte de uma chave de armazenamento em cache. Para obter mais informações sobre armazenamento em cache, consulte Usar parâmetros de método ou integração como chaves de cache para indexar respostas em cache.

    Para remover o parâmetro de string de consulta, selecione Remover.

  8. Para adicionar um parâmetro de cabeçalho ao método, faça o seguinte:

    1. Selecione Cabeçalhos de solicitação HTTP e, depois, Adicionar cabeçalho.

    2. Em Nome, insira o nome do cabeçalho.

    3. Selecione Obrigatório se o cabeçalho recém-criado precisar ser usado para a validação de solicitação. Para obter mais informações sobre a validação de solicitação, consulte Usar a validação de solicitação no API Gateway.

    4. Selecione Armazenamento em cache se o cabeçalho recém-criado precisar ser usado como parte de uma chave de armazenamento em cache. Para obter mais informações sobre armazenamento em cache, consulte Usar parâmetros de método ou integração como chaves de cache para indexar respostas em cache.

    Para remover o cabeçalho, selecione Remover.

  9. Para declarar o formato de carga útil de uma solicitação de método com o verbo HTTP POST, PUT ou PATCH, expanda Corpo da solicitação e faça o seguinte:

    1. Escolha Add model (Adicionar modelo).

    2. Em Tipo de conteúdo, insira um tipo MIME (por exemplo, application/json).

    3. Em Modelo, selecione um modelo no menu suspenso. Os modelos atualmente disponíveis para a API incluem os modelos padrão Empty e Error, bem como quaisquer modelos que você tenha criado e adicionado à coleção de Modelos da API. Para obter mais informações sobre a criação de um modelo, consulte Noções básicas dos modelos de dados.

      nota

      O modelo é útil para informar ao cliente o formato de dados esperado de uma carga útil. Ele é útil para gerar um modelo de mapeamento de esqueleto. É importante gerar um SDK altamente tipado da API em linguagens como Java, C #, Objective-C e Swift. Ele só será necessário se a validação de solicitação estiver ativada para a carga útil.

  10. Escolha Salvar.

Configurar uma resposta do método API Gateway usando o console do API Gateway

Um método de API pode ter uma ou mais respostas. Cada resposta é indexada por seu código de status HTTP. Por padrão, o console do API Gateway adiciona a resposta 200 às respostas de método. Você pode modificá-la, por exemplo, para que o método retorne 201 em vez disso. Você pode adicionar outras respostas, por exemplo, 409 para negação de acesso e 500 para variáveis de estágio não inicializadas utilizadas.

Para usar o console do API Gateway para modificar, excluir ou adicionar uma resposta a um método de API, siga estas instruções.

  1. No painel Recursos, escolha seu método e, em seguida, escolha a guia Resposta do método. Talvez seja necessário selecionar o botão de seta para a direita para mostrar a guia.

  2. Na seção Configurações de resposta do método, selecione Criar resposta.

  3. Em Código de status HTTP, insira um código de status HTTP, como 200, 400 ou 500.

    Quando uma resposta retornada pelo backend não tiver uma resposta de método correspondente definida, o API Gateway não retornará a resposta para o cliente. Em vez disso, ele retornará uma resposta de erro 500 Internal server error.

  4. Escolha Add header (Adicionar cabeçalho).

  5. Em Nome de cabeçalho, insira um nome.

    Para retornar um cabeçalho do back-end para o cliente, adicione o cabeçalho à resposta do método.

  6. Selecione Adicionar modelo para definir um formato do corpo de resposta de método.

    Digite o tipo de mídia da carga útil de resposta para Tipo de conteúdo e selecione um modelo no menu suspenso Modelos.

  7. Escolha Salvar.

Para modificar uma resposta existente, acesse a resposta do método e selecione Editar. Para alterar o Código de status HTTP, selecione Excluir e crie uma resposta de método.

Para cada resposta retornada do backend, você deve ter uma resposta compatível configurada como a resposta de método. No entanto, a configuração de cabeçalhos de resposta de método e o modelo de carga útil são opcionais, a menos que você mapeie o resultado do backend para a resposta de método antes de retornar para o cliente. Além disso, um modelo de carga útil de resposta de método é importante se você pretende gerar um SDK fortemente tipado para sua API.