asp.net - CORS 和内部服务器错误响应

标签 asp.net google-chrome asp.net-web-api cors

在 ASP.NET WebApi2 中,如果存在内部服务器错误,则会发送 500 响应 没有 Access-Control-Allow-Origin header ,即使 CORS is enabled .

这会导致浏览器报告 CORS 错误,而不是内部服务器错误。

我认为处于错误状态的服务器可能无法报告它将响应的来源,因此在我看来,浏览器应该处理这种特殊情况并报告内部错误,而不是 CORS 错误。

A ) 有没有办法让内部服务器错误显示在浏览器中作为我的请求失败的原因?

B) 浏览器是否应该就此提出问题?

最佳答案

根据 CORS 规范,如果响应不包含对跨域请求的正确确认,则用户代理(浏览器)不应透露有关请求的任何信息。因此,浏览器遵循规范,对此无能为力。如果您想以编程方式显示客户端的底层响应状态,您的服务器将需要通过包含适当的 Access-Control-Allow header 来正确确认跨域请求。

关于asp.net - CORS 和内部服务器错误响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20108413/

相关文章:

reactjs - axios 不返回值

asp.net - asp中windows身份验证的简单自定义角色。网?

c# - ASP.NET Web 服务是否已被 WCF Web 服务取代?

google-chrome - 不支持组件树

javascript - Try Catch 不捕获 Chrome 中的语法错误

c# - 我们如何隐藏 WebAPI 中的属性?

c# - Controller 中 id 的值始终相同

c# - Asp.Net WebApi 继承与 BaseController

google-chrome - 如何获取 Chrome 扩展程序中刚刚关闭的选项卡的 URL?

jquery - 如何将 ASP.NET Core WebAPI 方法绑定(bind)到模型的 bool 字段?