Ativar o CORS em um recurso usando o console do API Gateway
Você pode usar o console do API Gateway para habilitar o suporte ao CORS para um ou todos os métodos em um recurso de API REST que você criou. Depois de habilitar o suporte ao CORS, defina o comportamento de passagem da integração como NEVER
. Nesse caso, a solicitação de método de um tipo de conteúdo não mapeado será rejeitada com uma resposta HTTP 415 Tipo de mídia incompatível. Para ter mais informações, consulte Comportamentos de passagem direta de integração.
Importante
Os recursos podem conter recursos filho. A habilitação do suporte ao CORS para um recurso e seus métodos não o habilita recursivamente para recursos filho e seus métodos.
Para habilitar o suporte ao CORS em um recurso da API REST
Inicie uma sessão no console do API Gateway em https://console.aws.amazon.com/apigateway
. -
Escolha uma API.
-
Escolha um recurso em Recursos.
-
Na seção Detalhes do recurso, escolha Ativar CORS.
-
Na caixa Ativar CORS, faça o seguinte:
-
(Opcional) Se você criou uma resposta de gateway personalizada e deseja habilitar o suporte ao CORS para uma resposta, selecione uma resposta de gateway.
-
Selecione cada método para habilitar o suporte ao CORS. O método
OPTION
deve ter o CORS habilitado.Se você habilitar o suporte ao CORS para um método
ANY
, o CORS será habilitado para todos os métodos. -
No campo de entrada Access-Control-Allow-Headers, insira uma string estática de uma lista separada por vírgulas de cabeçalhos que o cliente deve enviar na solicitação real do recurso. Use a lista de cabeçalhos
'Content-Type,X-Amz-Date,Authorization,X-Api-Key,X-Amz-Security-Token'
fornecida pelo console ou especifique seus próprios cabeçalhos. -
Use o valor
'*'
fornecido pelo console como o valor do cabeçalho Access-Control-Allow-Origin para permitir solicitações de acesso de todas as origens ou especifique as origens a serem permitidas para acessar o recurso. -
Escolha Salvar.
Importante
Ao aplicar as instruções acima ao método
ANY
em uma integração de proxy, nenhum dos cabeçalhos CORS aplicáveis será definido. Em vez disso, o back-end deve retornar os cabeçalhos CORS aplicáveis, comoAccess-Control-Allow-Origin
. -
Depois que o CORS for habilitado no método GET
, um método OPTIONS
será adicionado ao recurso se ainda não estiver lá. A resposta 200
do método OPTIONS
é automaticamente configurada para retornar os três cabeçalhos Access-Control-Allow-*
a fim de atender a handshakes de simulação. Além disso, o método real (GET
) também é configurado por padrão para retornar o cabeçalho Access-Control-Allow-Origin
em sua resposta 200. Para outros tipos de respostas, você precisará configurá-las manualmente para retornar o cabeçalho Access-Control-Allow-Origin'
com "*" ou origens específicas, caso não queira retornar o erro Cross-origin access
.
Depois que você habilitar o suporte ao CORS em seu recurso, você deve implantar ou reimplantar a API para que as novas configurações entrem em vigor. Para ter mais informações, consulte Criar uma implantação.
nota
Se você não conseguir habilitar o suporte ao CORS em seu recurso depois de seguir o procedimento, recomendamos que você compare sua configuração de CORS com o recurso /pets
da API de exemplo. Para saber como criar a API de exemplo, consulte Tutorial: Criar uma API REST importando um exemplo.