2010-03-16 117 views
0

我遇到了一个场景,在随机时间我执行javascript时出现“访问被拒绝”。这是不可重复的,并发生在我的应用程序的随机地方。没有迹象表明日志中的内容是什么造成的,我真的对此感到不知所措。这似乎只是UI问题。但是,没有理由应该出现,因为我没有任何可以触发的权限检查。JavaScript返回访问被拒绝

在此先感谢

+3

好吧,没有任何代码,甚至没有模糊的描述你在做什么,你不给我们任何帮助你的机会 – 2010-03-16 11:05:07

回答

5

如果您尝试访问其他框架的窗口对象,或者执行ajax请求来加载来自其他站点的信息等,您将获得访问被拒绝的错误,除非1)资源来自same origin,或B)您正在使用启用CORS的浏览器,该资源支持CORS,并允许您访问。

我不能马上想到JavaScript中的其他访问被拒绝的错误,所以我会在任何你试图访问其他窗口对象或者做Ajax请求的地方看看。

这是一个很大的拉伸(而不是意在MS-扑),但如果你只看到了这个在IE浏览器,而不是其他浏览器的时候,IE有混为一谈中的页面idname命名空间的问题,所以如果(例如)你的网页上有一个iframe,其页面上的nameid相同,并且你试图访问另一页面,IE可能认为你正在尝试访问iframe - 哪如果iframe包含不符合SOP的内容,则会成为访问问题。再次,一段时间,但我见过人遇到id与IE浏览器的name问题很多次...微软的page on getElementById说这是IE6和IE7的问题,但不是在IE8,所以这是一个积极的举措。

1

记住JavaScript有从完全相同的域加载信息,因为它是在运行。

希望这会有所帮助。