我错误地创建了我的整个Web应用程序,而不是在IE上测试它。我只在Firefox和Safari上测试过它。 Web应用程序在Safari和Firefox上运行良好,但它在IE上提供了Permission Denied错误。
我正在使用Google AuthSub身份验证,因此要使用Google帐户进行身份验证,首先会重定向以允许应用访问Google帐户。验证后,IE将“http”更改为“https”。 Firefox或Safari都不会发生这种情况。他们仍然使用'http'协议。
IE然后给出一个Permission Denied错误。 JavaScript是否以任何方式与“https”冲突?
应用程序在这里 - > http://ankitahuja.com/apps/proxycal
并且导致错误的页面是 - > http://ankitahuja.com/apps/proxycal/proxycal.php
答案 0 :(得分:1)
当我在IE和FF中打开proxycal.php页面时,Javascript(function _run
)中的这一行会出现错误:
calendarService = new google.gdata.calendar.CalendarService('proxycal');
此处calendar
不是google.gdata
的成员。
我建议您通过调用堆栈进行调试,以找出未初始化的内容。
答案 1 :(得分:1)
我在IE之前遇到过这个错误。大多数情况下,这是因为我使用XmlHttpRequest
从其他域获取数据。检查IE的Internet选项中的“允许来自其他域的数据”设置,确保允许它,然后查看是否出现相同的错误。
答案 2 :(得分:0)
在IE浏览器中,您可以使用XDomainRequest
,但不能使用来自http的https,该屏蔽已被阻止且This is an expected by-design behavior(虽然在FF / Chrome中无法预料)