gpt4 book ai didi

javascript - Facebook 连接使用 IE8 导致问题;任何解决方法?

转载 作者:可可西里 更新时间:2023-11-01 02:46:55 26 4
gpt4 key购买 nike

我一直在努力解决在 IE8 上使用 Facebook Connect 的问题,我似乎已经走到了死胡同:

我们有一个 Facebook 游戏 (Canvas iFrame) 在使用 IE8 时报告了问题。我们已按照 FB.init 上的说明进行操作开发者页面完全正确,但无处可去。

我们尝试使用 channelUrl 修复程序和各种修复程序,所有这些都已概述 here .

我们的响应 header 正在发送 P3P header :

P3P CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"

我们还测试了此集成的异步和同步版本,结果均未产生任何差异。

尽管我们做出了所有努力,但在 IE8 上,FB.getSession() 始终返回未定义的值。在报告给 Facebook 的错误中,我查看了大量信息,但遗憾的是没有成功。他们将其解决为不是错误......尽管在他们认为问题已解决很久之后,用户仍在线程上持续报告该问题。

在最后一次尝试中,我转向这里,并从一个完整的测试 FB 应用程序开始,该应用程序除了 FB.init JS 示例添加了一些控制台日志记录以显示 FB.getSession有一个uid。

如果您要回复此问题,请问您是否正在针对 IE8 检查此问题并正在查看控制台,该控制台已成功加载 FB session 将写

FB: [object Object] FB.getSession().uid: [your fb id]

http://apps.facebook.com/fb-js-issue

里面的代码如下:

<div id="fb-root"></div>
<script type="text/javascript">

window.fbAsyncInit = function() {

FB.init({
appId: 'appId',
status: true,
xfbml: true,
cookie: true,
channelUrl: "http://ourserver.com/channelUrl.htm"
});
FB.Canvas.setAutoResize();
console.log("Running FB test");

setTimeout(function() {
console.log("FB: " + FB + " FB.getSession().uid: " + FB.getSession().uid);
}, 5000);


};
(function () {
var e = document.createElement('script');
e.async = true;
e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
}());

</script>

总的来说,该示例应用程序运行良好,但在极少数情况下甚至会出现问题。

我们的真实应用程序(使用相同的 FB.init 方法)在 IE 上始终遇到 FB.getSession 未定义问题,因此无法加载

http://apps.facebook.com/party-on

更新:我们已经确定该问题对 Windows XP 或 Vista 上的 IE8 影响更严重 - Windows 7 上的 IE8 似乎问题较少(尽管不是 100%)

如何克服这个问题?

所以..鉴于这个问题看起来很普遍而且没有明确的解决办法,缺少一些尚未公开讨论的严肃魔术最终会解决这个问题,真正有启发性的是强调其他可能的方法与他们展示的 FB.connect 集成

我提到这一点的原因是,当您查看 CityVille 和 FarmVille 如何进行他们的 FB 集成时,它与 FB 自己作为开发人员文档编写的内容相去甚远。嗯,有趣

在此阶段,任何新鲜的想法和不同的 Angular 都将受到热烈欢迎!!

最佳答案

只是一个随机问题,您真的在 IE 8 模式下使用 IE 8 吗?请小心,因为有时 IE 8 会切换到兼容模式 (IE 7),然后您就会遇到一系列全新的问题。您页面上的此代码强制 IE 以最新版本呈现。它必须是第一个元标记。

<meta http-equiv="X-UA-Compatible" content="IE=edge" >

http://msdn.microsoft.com/en-us/library/cc288325(v=vs.85).aspx

关于javascript - Facebook 连接使用 IE8 导致问题;任何解决方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6103882/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com