使用Facebook REST API时IE9错误SEC7111(“HTTPS安全性受损”)

时间:2011-03-16 09:48:08

标签: facebook internet-explorer-9

我是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引入安全连接(帐户 - &gt;帐户设置 - &gt;帐户安全 - &gt;安全浏览)后,Connect弹出窗口中断。一位插件用户指出可以通过将上面的内容替换为:

来解决问题
<script type="text/javascript" src="https://ssl.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php"></script>

现在每个浏览器都可以正常工作,除了新发布的IE9,它报告了以下两个错误(并拒绝初始化Facebook API):

SEC7111:https://www.facebook.com/extern/login_status.php?api_key=(MY_KEY)&extern=0&channel=(URL_to_my_xd_receiver

影响了HTTPS安全性

SEC7111:https://api.facebook.com/static/v0.4/client_restserver.php?r=1300118768

影响了HTTPS安全性

请注意,托管Facebook Connect按钮的页面不是https,前面两个脚本包含我没有添加 - 通过IE9的开发人员工具查看页面DOM源显示这两个脚本包含在div“FB_HiddenContainer”中这显然是在Facebook尝试初始化时异步插入的。

我在Google上发现的关于SEC7111的所有内容都是指https页面试图通过http包含脚本,但我的问题恰恰相反:页面是http,脚本(由Facebook自动加载)是https。

任何想法都会非常感激,我很难过。如果您想自己玩,可以在我的网站http://www.justin-klein.com上进行。您会注意到“使用Facebook登录”按钮可在除IE9之外的所有浏览器上正确初始化。

1 个答案:

答案 0 :(得分:0)

您可以使用https FB库解决此问题。更多信息here

从该网站的缓存版本:

  

SEC7111:http://static.ak.fbcdn.net/connect/xd_proxy.php?version=0危及HTTPS安全。

     

可以使用https版本修复此错误:

<script src="https://connect.facebook.net/en_US/all.js"></script>