【问题标题】:Cross Origin Resource Sharing (CORS) Error - Can this be blocked at the client?跨域资源共享 (CORS) 错误 - 这可以在客户端被阻止吗?
【发布时间】:2014-12-01 06:57:54
【问题描述】:

我有一个使用 $.getJSON AJAX 调用执行多个 CORS 操作的 Web 应用程序。通常,在大多数客户端浏览器上,这可以正常工作,因为我的应用程序正在访问的服务器启用了 CORS。但是,我今天注意到,当我尝试在具有相当严格安全性的企业环境中在客户端(使用 IE 11)上运行我的应用程序时,我的 CORS 尝试失败了,并出现以下错误:

如果图像无法读取,则有几个错误。

One is SEC7118 (CORS operation
One is SEC7127 (Redirect was blocked) and 
Script7002 (XMLHTTPRequest: Network error 0x2ef1.

那么,客户端网络是否有可能阻止 CORS 操作?

【问题讨论】:

标签: javascript ajax


【解决方案1】:

是的。公司网络可以阻止它想要的一切,并且可能是过度限制的防火墙从 HTTP 请求/响应中剥离 CORS 标头(也称为“它不知道的一切”)。

【讨论】:

    【解决方案2】:

    我在一个 AngularJS 应用程序中遇到了一个错误,它很简单,但使用了指令。决议如下。

    在 repo 的根目录中创建一个文件 staticwebapp.config.json 并添加以下配置:

    {
      "globalHeaders": {
        "Access-Control-Allow-Origin": "*",
        "Access-Control-Allow-Methods": "GET, OPTIONS"
      }
    }
    

    发布您的应用程序并重新测试。成功解决! 下面我的 AngularJS 是如何项目到项目的

    【讨论】:

      猜你喜欢
      • 2021-05-16
      • 2013-01-12
      • 1970-01-01
      • 2015-02-27
      • 2018-05-04
      • 1970-01-01
      • 2014-01-18
      • 2014-10-08
      相关资源
      最近更新 更多