【问题标题】:ScriptResource.axd Access is denied. Cross-Domain iFrameScriptResource.axd 访问被拒绝。跨域 iFrame
【发布时间】:2010-12-26 20:20:56
【问题描述】:

我们有一个包含 iframe 的网页,其中包含一个与其父页面共享身份验证 cookie 的页面。例如,iframe 页面位于 foo.domain.com 域上,包含 iframe 的页面位于 foo2.domain.com 上。两者都共享一个来自 domain.com 的 cookie。身份验证效果很好,但问题在于 IE7 中的 ASP.NET,我们总是收到 javascript 错误:

访问被拒绝。

ScriptResource.axd

我们正在使用 ASP.NET 3.5,我们也使用 Ajax Control Toolkit(最新版本 3.0.30930.0)。 IE8 不会出现此问题。 Firefox 和 Chrome 也没有问题。

以前有人遇到过这个问题吗?

【问题讨论】:

    标签: asp.net iframe cookies cross-domain


    【解决方案1】:

    在 JavaScript 中,您可能需要更改文档域。 IE7 可能会一直查看域到服务器级别:foo.domain.com != foo2.domain.com。 IE8 等人可能会将文档域视为 *.domain.com 的面值。

    这是一篇相关的快速博客文章:http://jszen.blogspot.com/2005/03/cross-domain-security-woes.html

    但要复制代码,将以下内容添加到两个页面应该会再次滚动。

    <script type="text/javascript">
      document.domain="example.com";
    </script>
    

    【讨论】:

      【解决方案2】:

      如果存在 DNS 重定向,IE7 可能会出现问题,例如如果http://site.domain.com 真的是http://www.domain.com/site,则透明DNS 重定向在IE7 中存在问题,但在您提到的其他浏览器中没有问题。 IE7 将此视为跨域脚本并阻止...您只会获得拒绝访问。

      是这种情况,还是与重定向或不同域类似的情况?如果您可以将主页作为 domain.com/ 进行测试,您会收到错误吗? IE7 对待孩子的方式与对待兄弟姐妹的方式不同。

      【讨论】:

      • 是的,对我来说听起来也像 xdomain 问题。
      • 我也有同样的问题,有没有不改变源代码的快速解决方案? ...像一些 IIS 配置或其他?
      猜你喜欢
      • 2016-03-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-15
      • 2015-07-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多