CORS preflight

termo

desenvolvimento websegurança

A requisição OPTIONS que o navegador envia primeiro, pedindo permissão ao servidor, antes de aceitar enviar certas requisições entre origens.

Uma requisição entre origens só pula o preflight quando é "simples": método GET, HEAD ou POST, com cabeçalhos e tipos de conteúdo da safelist. Qualquer outra coisa - PUT, DELETE, PATCH, o novo QUERY, ou um cabeçalho customizado como Authorization - faz o navegador enviar antes um OPTIONS com Access-Control-Request-Method e -Headers; só se o servidor responder com os cabeçalhos Access-Control-Allow-* correspondentes a requisição real acontece. A maioria dos erros de "bloqueado por CORS" é na verdade um preflight que o servidor respondeu mal ou nem respondeu, e o Access-Control-Max-Age é como servidores deixam o navegador guardar a permissão em cache em vez de perguntar antes de cada requisição.

Também conhecido como: preflight, preflight request, OPTIONS preflight

Todos os verbetes do glossário