伙计们,我在下面遇到这个问题,当我在本地测试angularjs和C#webapi时,工作得很完美,在服务器上部署之后,它再也无法工作了。
兴趣点是我有另一个页面,它指向同一个服务器,基本上,我制作了这个工作功能的副本,只是更新了值,我已经仔细检查了文件,检查是否主要方法被改变了,但他们没有。
注意:是的,CORS已经启用,我尝试了很多不同的配置
有没有人知道这可能是什么?
编辑:忘了提及我们在web.config上的确有:POST 504(GATEWAY_TIMEOUT)
(index):1无法加载 [URL_ENDPOINT_C#_WEBAPI] No' Access-Control-Allow-Origin'标题出现在请求的上 资源。因此不允许来源[ANGULAR_WEBSITE] 访问。响应具有HTTP状态代码504。
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*" />
<add name="Access-Control-Allow-Headers" value="Content-Type, Authorization, Accept, X-Requested-With" />
<add name="Access-Control-Allow-Methods" value="OPTIONS, TRACE, GET, HEAD, POST, PUT" />
</customHeaders>
和我们在注册方法
上的WebApiConfig.csconfig.EnableCors();
答案 0 :(得分:0)
如果您获得了504网关超时,那么您的应用就会以某种方式无法响应。由于504响应只是Web服务器返回的基本错误,因此它不会包含您明确添加的所有CORS标头,因此您将看到CORS错误消息。
一旦解决了504错误的根本原因,您就会在响应中看到CORS标头。
答案 1 :(得分:0)
好吧,我已经知道发生了什么,有一个方法抛出一个异常,然后我看到了一个CORS异常。所以我确实改变了这个方法,然后再没有例外。
谢谢大家