【发布时间】:2011-07-16 11:02:05
【问题描述】:
我是一个 Wordpress 插件的作者,该插件允许用户使用 Facebook 登录他们的博客;它使用旧的 REST API 来引入登录按钮。通常,包含 API 是通过以下方式完成的:
<script type="text/javascript" src="http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php"></script>
但是,在 Facebook 引入安全连接(帐户 -> 帐户设置 -> 帐户安全 -> 安全浏览)后,连接弹出窗口中断了。一位插件用户指出,可以通过将上述内容替换为以下内容来解决该问题:
<script type="text/javascript" src="https://ssl.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php"></script>
除了新发布的 IE9 之外,现在所有浏览器都可以正常工作,它报告以下两个错误(并拒绝初始化 Facebook API):
SEC7111:HTTPS 安全性受到https://www.facebook.com/extern/login_status.php?api_key=(MY_KEY)&extern=0&channel=(URL_to_my_xd_receiver) 的威胁
SEC7111:HTTPS 安全性受到https://api.facebook.com/static/v0.4/client_restserver.php?r=1300118768 的威胁
请注意,承载 Facebook Connect 按钮的页面不是 https,并且前面的两个脚本包含不是我添加的 - 通过 IE9 的开发人员工具查看页面 DOM 源会发现这两个脚本包含在 div "FB_HiddenContainer" 中,这显然是 Facebook 在尝试初始化时异步插入的。
我在谷歌上找到的关于 SEC7111 的所有内容都是指试图通过 http 包含脚本的 https 页面,但我的问题恰恰相反:页面是 http,而脚本(由 Facebook 自动加载)是 https。
任何想法将不胜感激,我很难过。如果您想自己玩,可以在我的网站上进行,http://www.justin-klein.com。您会注意到“使用 Facebook 登录”按钮在除 IE9 之外的所有浏览器上都能正确初始化。
【问题讨论】:
-
我真的帮不了你,我很确定你考虑过,但我不得不问...你考虑过升级插件吗?
-
当然。这样做很重要,而且我现在时间很紧,所以我真的很想避免重写所有东西,如果可能的话,只是为了迎合 IE……
-
@Metal450 关于您的问题有任何更新吗?当我尝试将 get 变量发送到我的 Canvas 应用程序时,我遇到了同样的错误(请参阅facebook.stackoverflow.com/questions/7866581/…)
标签: facebook internet-explorer-9