Os serviços Nginx falham para solicitações entre domínios se o serviço retornar erro

4

Estou fazendo uma solicitação de vários domínios no meu aplicativo da web.

Eu configurei os cabeçalhos do CORS no Nginx. Tudo está funcionando bem, exceto quando o serviço retorna um erro como 404, 400, 500 etc, em vez de receber o código de erro, o serviço está falhando com um erro dizendo que o Origin *********** is not allowed by Access-Control-Allow-Origin .

Alguma idéia de por que isso pode estar acontecendo?

Esta é a aparência da configuração nginx;

location /api {
    add_header Access-Control-Allow-Origin *;
}
    
por Niyaz 24.09.2012 / 08:15

3 respostas

1

Infelizmente add_header não funciona com códigos de status diferentes de 200, 204, 301, 302 ou 304. Você pode encontrar este na documentação aqui .

Você pode usar este plug-in para fazer o que quiser:

link

    
por 25.09.2012 / 01:49
2

Você pode usar a diretiva always iniciando o nginx 1.7.5 (* Feature: o parâmetro "always" da diretiva "add_header").

add_header 'Access-Control-Allow-Origin' '*' always;
    
por 07.05.2018 / 06:06
0

Posso confirmar que o módulo headers_more (mencionado em esta resposta ) pode ser usada para adicionar cabeçalhos para todas as respostas HTTP, independentemente do código de status.

Observação: você pode precisar da solução alternativa em link para construir este módulo com o Nginx no Windows, mas funciona como esperado depois de compilado.

    
por 24.06.2015 / 17:57