Access-Control-Allow-Credentials
O cabeçalho de resposta Access-Control-Allow-Credentials
diz aos navegadores se a resposta deve ser exposta ao código frontend JavaScript quando o modo de credenciais da requisição (Request.credentials
) é include
.
Quando o modo de credenciais da requisição (Request.credentials
) é include
, navegadores vão somente expor a resposta ao código frontend JavaScript se o valor de Access-Control-Allow-Credentials
for true
.
Credenciais são cookies, cabeçalhos de autorização ou certificados de cliente TLS.
Quando usado como parte de uma resposta a uma requisição pré-vôo (preflight), isso indica se a requisição atual vai ou não ser feita usando credenciais. Note que uma simples requisição GET
não é feita com pré-vôo, e se uma requisição é feita para um recurso usando credenciais, se o cabeçalho não é retornado com o recurso, a resposta é ignorada pelo navegador e não é retornada ao conteúdo web.
O cabeçalho Access-Control-Allow-Credentials
funciona em conjunto com a propriedade XMLHttpRequest.withCredentials
ou com a opção credentials
na construtor da Request()
na Fetch API. Para requisições CORS com credenciais, para que os navegadores exponham a resposta ao código frontend JavaScript, ambos o servidor (usando o cabeçalho Access-Control-Allow-Credentials
) e o cliente (colocando o modo de credenciais para o XHR, Fetch, ou requisição Ajax) devem indicar que eles estão optando por incluir as credenciais.
Tipo de cabeçalho | Response header |
---|---|
Forbidden header name | não |
Sintaxe
Access-Control-Allow-Credentials: true
Diretivas
- true
-
O único valor válido para este cabeçalho é
true
(case-sensitive). Se você não precisa de credenciais, omita este cabeçalho inteiramente (ao invés de colocar seu valor parafalse
).
Exemplos
Especificações
Specification |
---|
Fetch Standard # http-access-control-allow-credentials |
Compatibilidade com navegadores
BCD tables only load in the browser