O redirecionamento HTTP 302 para uma solicitação CORS é descartado pelos navegadores
Estou carregando uma página HTML com algum javascript do site A.
Javascript envia uma solicitação HTTP GET para o site B. Neste ponto:
- o navegador envia a solicitação OPTIONS para o site B
- O site B responde à solicitação de OPÇÕES
- O navegador envia a solicitação HTTP GET original para o site B
- O site B responde com HTTP 302 com o local definido para o site C.
Nesse ponto, o navegador para de processar a solicitação. Eu esperava que ele enviasse a solicitação HTTP OPTIONS para o site C, assim como quando enviou a solicitação para o Site B. Mas não enviou. Eu observei o mesmo comportamento no Firefox e Chrome.
Gostaria de entender por que os navegadores estão se comportando dessa maneira. Entendo que deve haver algumas verificações ou redirecionamentos máximos para evitar loops, mas não limitados, 2 solicitações de redirecionamento.
Também por que as informações do cabeçalho NÃO são enviadas ao código Javascript para que o aplicativo possa fazer algo a respeito. Ele é simplesmente descartado pelo navegador, embora o provoque, mostrando a resposta HTTP 302 do site C com o URL do local no console do navegador.
XMLHttpRequest não pode carregarhttps: // siteB /... A solicitação foi redirecionada para 'https: // siteC /.. ', que não é permitido para solicitações de origem que requerem preflight.
Quaisquer informações sobre o design são sinceramente apreciadas.
Saudações