NGiNX - 没有返回足够的 headers 错误(4xx,5xx)与成功(2xx)
NGiNX - Not returning sufficient headers for error(4xx, 5xx) Vs Success(2xx)
朋友们大家好,
我从 angular
的角度独立地问 a question 同样的 context
。
请参考我的 NGiNX
服务器 configuration .
我正在调整的是,每当我的 Angular
应用的 REST
请求 成功 (200) returns from server(where NGiNX
installed) 在这种情况下 NGiNX
returns sufficient headers
连同 response
& 我能够成功处理它 Vs Error request/response.
特殊情况是,我无法获得request status
。 例如,如果我的APIreturn401, 400, 500..
除了200在这种情况下我的angular
App
得到 http response-status
作为“Zero(0)”,而不管 return 是什么服务器。我的主要假设是由于 CORS
问题(主要是所有建议修复)或一些隐藏的(对我来说)。
在Angular中我可以看到下面的东西(参考screen-shot),
My assumption is, if CORS issue then my 200 request response must also
not server. so my guess is CORS I have configured correctly.
任何帮助将不胜感激!
注意-
- 我很困惑是
NGiNX
方面的问题还是 Angular
方面的问题。这就是为什么我在不同的标签下问同样的问题(Angular, Nginx
)。
- 我还在服务器端实现了 SSL。所以也请考虑这个案例。
要将 headers 添加到 4xx 和 5xx 错误:设置 headers 时,必须使用 always
参数:
add_header <header_name> <value> always
请参阅 http://nginx.org/en/docs/http/ngx_http_headers_module.html#add_header 处的文档:
Adds the specified field to a response header provided that the response code equals 200, 201 (1.3.10), 204, 206, 301, 302, 303, 304, 307 (1.1.16, 1.0.13), or 308 (1.13.0)… If the always
parameter is specified (1.7.5), the header field will be added regardless of the response code.
朋友们大家好,
我从 angular
的角度独立地问 a question 同样的 context
。
请参考我的 NGiNX
服务器 configuration .
我正在调整的是,每当我的 Angular
应用的 REST
请求 成功 (200) returns from server(where NGiNX
installed) 在这种情况下 NGiNX
returns sufficient headers
连同 response
& 我能够成功处理它 Vs Error request/response.
特殊情况是,我无法获得request status
。 例如,如果我的APIreturn401, 400, 500..
除了200在这种情况下我的angular
App
得到 http response-status
作为“Zero(0)”,而不管 return 是什么服务器。我的主要假设是由于 CORS
问题(主要是所有建议修复)或一些隐藏的(对我来说)。
在Angular中我可以看到下面的东西(参考screen-shot),
My assumption is, if CORS issue then my 200 request response must also not server. so my guess is CORS I have configured correctly.
任何帮助将不胜感激!
注意-
- 我很困惑是
NGiNX
方面的问题还是Angular
方面的问题。这就是为什么我在不同的标签下问同样的问题(Angular, Nginx
)。 - 我还在服务器端实现了 SSL。所以也请考虑这个案例。
要将 headers 添加到 4xx 和 5xx 错误:设置 headers 时,必须使用 always
参数:
add_header <header_name> <value> always
请参阅 http://nginx.org/en/docs/http/ngx_http_headers_module.html#add_header 处的文档:
Adds the specified field to a response header provided that the response code equals 200, 201 (1.3.10), 204, 206, 301, 302, 303, 304, 307 (1.1.16, 1.0.13), or 308 (1.13.0)… If the
always
parameter is specified (1.7.5), the header field will be added regardless of the response code.