ajax xhr.getResponseHeader-HTTP错误响应上缺少自定义标头

时间:2018-08-21 17:22:50

标签: jquery ajax cors http-headers

设置

  • jquery 3.3.1
  • nginx 1.13.8
  • jetty / java后端

期望的行为

当出现错误(http状态为40x或50x)时,后端应通知客户端确切发生了什么。自定义字符串对我们已经足够了,我们希望将其作为称为 X-error

的自定义标头在HTTP响应中发送

Ajax客户端请求

启用了CORS

enter image description here

问题

40x(在这种情况下为404)时,响应中没有返回任何自定义标头。

nginx

enter image description here

浏览器屏幕截图

选项(飞行前)

enter image description here

获取

get

问题

当出现问题(http状态为40x或50x)时,jqXHR中不会再出现X-error标头。即使在浏览器中,我们也可以根据屏幕快照看到它。我们如何做到这一点?缺少什么设置?

最后

nginx,我们使用的是“ always”设置,因此当http响应为20x时,X错误完美出现,而40x时绝不会出现。很难断定实际上是否允许40x响应携带自定义标头。

0 个答案:

没有答案