同一域的 IE9 中的 Script5 访问被拒绝

Posted

技术标签:

【中文标题】同一域的 IE9 中的 Script5 访问被拒绝【英文标题】:Script5 access denied in IE9 in same domain 【发布时间】:2012-06-14 08:35:33 【问题描述】:

我正在用 django 开发一个网站,它使用 jquery 多文件上传插件。

当我注册到我的网站时,一封确认电子邮件会发送到我的 gmail 帐户,我单击激活链接,我的网站会在新标签中打开。我登录,然后尝试上传文件,但在 IE9 中失败... F12 显示“Script5 访问被拒绝”

但是,如果我在 URL 地址栏中键入链接,而不是单击电子邮件中的链接,则效果很好。它允许我上传任何我想要的东西。

我在开发服务器中测试,主机名为http://192.168.0.1:8085

我的问题是,当我通过电子邮件链接访问我的网站时,它不起作用......我检查了标题,唯一改变的是当我从我的电子邮件链接打开页面时,有一个额外的标题,HTTP_REFERER = http://192.168.0.1:8085:/activate/16834e18a471d4f654aa763b2b22f203/,但除此之外,我找不到任何其他可能导致问题的东西......而且我不明白为什么当我输入网址时它可以正常工作。

我使用的 jquery multiupload 插件是: https://github.com/blueimp/jQuery-File-Upload

我的脚本是: http://pastebin.com/2JE8Qrnm

这是 html: http://pastebin.com/fyP0Z4sB

【问题讨论】:

这个错误似乎只能用gmail重现...我找到了一个简单的方法让大家重现它: 1.在您的gmail帐户中,单击“撰写” 2.在正文中电子邮件添加blueimp.github.com/jQuery-File-Upload 作为链接。 3. 将其发送到您自己的收件箱 4. 现在转到您的收件箱并打开电子邮件。 5.点击文件上传链接,这个应该在新标签页中打开 6.按F12打开IE调试工具 7.现在选择一些文件,然后点击上传按钮 8.检查IE调试中的concole工具,它应该说“Script5:访问被拒绝” 错误似乎就在 github.com/blueimp/jQuery-File-Upload/blob/master/js/… 提交后的第 122 行,它只是说访问被拒绝... 我遇到了类似的问题 - 你找到解决办法了吗? 【参考方案1】:

嗯...首先进入我脑海的是什么:

尝试添加:

response['p3p'] = 'CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"'

和/或:

response['Access-Control-Allow-Origin'] = '*'

您的回复。

【讨论】:

以上是关于同一域的 IE9 中的 Script5 访问被拒绝的主要内容,如果未能解决你的问题,请参考以下文章

从 onchange 触发 .click() 时 IE9 上出现“SCRIPT5 访问被拒绝”错误

防止 IE 中出现“SCRIPT5:访问被拒绝”错误

IE9:设置 document.domain 时访问被拒绝

SCRIPT5:访问被拒绝。在 IE 上使用 parse.js

仅在 IE9 上存在的 ajax 调用中的访问被拒绝

使用 CORS 调用本地 URL 时 IE10 中的访问被拒绝