【发布时间】:2023-03-03 00:58:01
【问题描述】:
应用程序
简而言之,应用程序将数据从后端显示到网页上。客户端应用程序是使用 AngularJS 制作的单页应用程序。它调用位于不同域的 ASP.NET Web API 服务来检索数据。我在客户端应用程序和 Web 服务上都使用 BreezeJS 来管理这些数据。客户端托管在 SharePoint Online 网站上,服务托管在 IIS7 上。
错误
当 AngularJS 尝试针对此 Web 服务进行 XMLHttpRequest.open() 调用时,我遇到了“拒绝访问”错误。然而,虽然这似乎是一个简单的 CORS 问题,但它有一些让我难以理解的特点:
-
最重要的是,此错误仅在使用 Internet Explorer 11(或以前的版本)时发生。当在 Chrome 或 Firefox 中查看应用程序时,它可以连接并从服务中检索数据。
-
Web 服务配置为接受调用源。
-
本机 IE 开发工具或 Fiddler 均未检测到网络流量。
具体来说,angular.js 文件的xhr.open(method, url, true); 行会抛出此错误。
有没有人知道为什么会发生这个错误?
另外,如果需要更具体的细节,我当然可以提供。我什至不确定问题可能来自哪里,我不想转储大量不相关的代码行。
【问题讨论】:
标签: angularjs asp.net-web-api cors breeze