Como configurar CORS (Cross-Origin Resource Sharing)

O que é CORS?

CORS (Cross-Origin Resource Sharing) é um mecanismo que informa aos navegadores que um recurso pode ser acessado a partir de um site específico. É utilizado para permitir ou bloquear o acesso a conteúdo como ajax, e fontes em outros sites.

Por padrão os navegadores bloqueiam esse tipo de acesso entre sites diferentes.

Exemplo

 

Como funciona o mecanismo CORS?

A configuração de CORS utiliza um cabeçalhos na requisição e na resposta. Na requisição, o principal cabeçalho é o Origin, enviado pelo navegador para identificar qual site está acessando o conteúdo.

Na resposta da requisição, o cabeçalho Access-Control-Allow-Origin identifica se o site em Origin possui permissão de acesso. Quando o navegador faz acesso ao conteúdo ajax ou de fonte em outro site, se esse cabeçalho não vier na resposta, o navegador irá bloquear o acesso ao conteúdo.

O cabeçalho Access-Control-Allow-Origin pode ter como valor o site que está acessando ou um asterisco, que indica que qualquer site pode acessar aquele conteúdo.

Exemplo

Requisição:

GET /minha-fonte.woff HTTP/1.1
Host: www.outrosite.com.br
Origin: https://www.meusite.com.br

Resposta:

HTTP/1.1 200 OK
Access-Control-Allow-Origin: https://www.meusite.com.br

O valor do cabeçalho  Access-Control-Allow-Origin deve sempre seguir o padrão de URL acima, com prefixo http:// ou https://, seguido do endereço do site e não deve terminar com / nem conter um caminho de url após o endereço do site.

 

Como configurar CORS?

A configuração de CORS é feita utilizando uma Smartrule Geral. Seleciona a URL que deseja liberar o acesso no critério URL (deve ser a URL do ajax ou fonte), em seguida selecione a ação Define Cross-Origin, com o valor do site que deseja liberar (este valor pode ser um asterisco para liberar para todos os sites).

 smartrule-cors.png

 

Tem mais dúvidas? Envie uma solicitação

0 Comentários

Artigo fechado para comentários.