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
Permitindo credenciais:
Access-Control-Allow-Credentials: true
Usando XHR com credenciais:
var xhr = new XMLHttpRequest();
xhr.open('GET', 'http://example.com/', true);
xhr.withCredentials = true;
xhr.send(null);
Usando Fetch com credenciais:
fetch(url, {
credentials: 'include'
})
Especificações
Especificação | Status | Comentário |
---|---|---|
Fetch The definition of 'Access-Control-Allow-Credentials' in that specification. |
Padrão em tempo real | Definição inicial |
Compatibilidade de navegador
BCD tables only load in the browser
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.