Esta página foi traduzida do inglês pela comunidade.Saiba mais e junte-se à comunidade MDN Web Docs.
Access-Control-Allow-Headers
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since julho de 2015.
* Some parts of this feature may have varying levels of support.
O cabeçalho de respostaAccess-Control-Allow-Headers é usado na resposta à umapreflight request na qual incluí o cabeçalhoAccess-Control-Request-Headers para indicar quais cabeçalhos HTTP podem ser utilizados durante a requisição efetiva.
Este cabeçalho é obrigatório se a requisição tem um cabeçalhoAccess-Control-Request-Headers.
| Tipo de cabeçalho | Response header |
|---|---|
| Forbidden header name | não |
In this article
Sintaxe
Access-Control-Allow-Headers: <nome-do-cabeçalho>[, <nome-do-cabeçalho>]*Access-Control-Allow-Headers: *
Diretivas
<nome-do-cabeçalho>O nome de um cabeçalho suportado. O cabeçalho pode listar qualquer quantidade de cabeçalhos, desde que sejam separados por vírgula.
*(coringa)O valor "
*" só conta como um valor coringa para requisições sem credenciais (requisições semcookies HTTP ou informação de autenticação HTTP). Em requisições com credenciais, isso é tratado como o nome de cabeçalho literal "*" sem qualquer semântica especial. Note que o cabeçalhoAuthorizationnão pode utilizar um coringa e sempre precisa ser listado explicitamente.
Os cabeçalhosCORS-safelisted request headers,Accept,Accept-Language,Content-Language,Content-Type são sempre permitidos e não precisam ser listados por este cabeçalho necessariamente. Entretanto, note que restrições adicionais são aplicadas com estes cabeçalhos envolvidos por listar estes cabeçalhos no cabeçalhoAccess-Control-Allow-Headers também.
Exemplos
>Um cabeçalho customizado
Aqui está um exemplos de como um cabeçalhoAccess-Control-Allow-Headers pode se parecer. Isso indica que em adição aosCORS-safelisted request headers, um cabeçalho customizado chamadoX-Custom-Header é suportado por requisições CORS pelo servidor.
Access-Control-Allow-Headers: X-Custom-Header
Múltiplos cabeçalhos
Este exemplo mostra o cabeçalhoAccess-Control-Allow-Headers quando é especificado para suportar diversos cabeçalhos.
Access-Control-Allow-Headers: X-Custom-Header, Upgrade-Insecure-Requests
Burlando restrições adicionais
Apesar de queCORS-safelisted request headers são sempre permitidos e geralmente não precisam ser listados no cabeçalhoAccess-Control-Allow-Headers, listá-los de qualquer forma irá envolver asrestrições adicionais que são aplicadas.
Access-Control-Allow-Headers: Accept
Exemplo de requisição pré-vôo
Vamos dar uma olhada em um exemplo de requisição pré-vôo envolvendo o cabeçalhoAccess-Control-Allow-Headers.
Requisição
Primeiro, a requisição. A requisição pré-vôo é uma requisiçãoOPTIONS que inclui algumas combinações de três cabeçalhos de requisições pré-vôo:Access-Control-Request-Method,Access-Control-Request-Headers, eOrigin, como por exemplo:
OPTIONS /resource/fooAccess-Control-Request-Method: DELETEAccess-Control-Request-Headers: origin, x-requested-withOrigin: https://foo.bar.org
Resposta
Se o servidor permite requisições CORS para usar o métodoDELETE, ele responde com um cabeçalho de respostaAccess-Control-Allow-Methods, no qual listaDELETE junto à outros métodos suportados:
HTTP/1.1 200 OKContent-Length: 0Connection: keep-aliveAccess-Control-Allow-Origin: https://foo.bar.orgAccess-Control-Allow-Methods: POST, GET, OPTIONS, DELETEAccess-Control-Max-Age: 86400
Se o método requisitado não é suportado, o servidor irá responder com um erro.
Especificações
| Specification |
|---|
| Fetch> # http-access-control-allow-headers> |