javascript - 经典 ASP 到 ASP.NET 4.0 的同源策略

标签 javascript jquery .net asp.net iis-6

我正在使用经典的 asp 站点来调用 ASP.NET 4.0 Http 处理程序。它们都部署在同一台服务器上。我正在尝试对处理程序进行 jquery 1.6 AJAX 调用。在 IE 中,我总是收到“No Transport”的错误。在 Firefox 和 Chrome 中,请求可以顺利通过。一些关于“No Transport”错误的搜索让我相信这个问题与同源策略有关。

根据 https://en.wikipedia.org/wiki/Same_origin_policy ,我似乎不应该在同源政策上遇到任何麻烦。两者具有相同的域、协议(protocol)并使用相同的端口号,因此两者之间的来源应该被认为是相同的。

$.ajax(
        {
            url: "/filehandler/DeleteHandler.ashx",
            data:
                {
                    data: someData
                },
            success: OnSuccessFunction,
            error: OnErrorFunction
        });

每次在 IE 中进行此 AJAX 调用时,都会调用 OnErrorFunction 回调函数并出现“无传输”错误。

有什么想法吗?

最佳答案

有关解决方案,请参阅下面的链接。我们必须添加这一行才能使其正常工作,这意味着它实际上是同源策略问题:

jQuery.support.cors = true;

这仍然没有回答“为什么它认为存在违反同源策略的问题?”的问题。但我们很高兴它能正常工作。

回答: jQuery Call to WebService returns "No Transport" error

关于javascript - 经典 ASP 到 ASP.NET 4.0 的同源策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7016745/

相关文章:

javascript - Oauth.io增量授权

jquery - 单击时左右同时滑动两个div

c# - 如何使用 C# 限制 Windows 应用程序只安装一台计算机?

c# - 为什么比较两个相等的波斯语单词不返回 0?

javascript - CSS保持背景视频居中

javascript - 在 JavaScript 中将原型(prototype)方法更改为函数的一行代码

javascript - 单独的类别项目 angularJS

javascript - 如何访问浏览器中的自动完成组合框

jquery - 如何缩放多个 div 并留在容器内?

c# - 如何保证同一时间只有一个用户可以执行一段代码