facebook app iframe safari上的登录问题
问题描述:
我有一个使用iframe的facebook应用程序。facebook app iframe safari上的登录问题
facebook将我的网站加载到iframe中。当我点击一个链接时,我的网站显示一个使用lightbox显示Facebook登录的iframe。一切正常工作,即铬,即铬。在Safari浏览器中,帧无限地重新加载。
PHP代码中的login.php
window.fbAsyncInit = function() {
FB.init({
appId : '<?=$appId?>',
status : true, // check login status
cookie : true, // enable cookies to allow the server to access the session
xfbml : true // parse XFBML
});
check_login_session();
// whenever the user logs in, we refresh the page
FB.Event.subscribe('auth.login', function() {
$.browser.safari = ($.browser.safari && /chrome/.test(navigator.userAgent.toLowerCase())) ? false : true;
window.location.href = window.location.href;
});
};
任何想法
$me = null;
$session = $facebook->getSession();
if ($session) {
try {
$me = $facebook->api('/me');
$_SESSION['facebook'] = $me;
} catch (FacebookApiException $e) {
}
}
if($me) require_once("logged.php");
else require_once("login.php");
的JavaScript,将不胜感激!
谢谢!
答
如果乌拉圭回合仍然在寻找解决方案,然后尝试建立P3P头 http://www.p3pwriter.com/LRN_121.asp
平时也设置里面的iframe cookie时的安全性问题,P3P头作为网站和客户端计算机之间的协议,低保保存在信息饼干不会被滥用。
快速的解决方案:http://planet.admon.org/how-to-implement-p3p-http-headers-for-cross-site-cookies/
做什么: 复制粘贴此在你的头:
<?php
header('P3P: CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"')
?>
完蛋了!
我刚刚发现http://*.com/questions/172223/how-do-i-set-cookies-from-outside-domains-inside-iframes-in-safari一个有趣的评论。我认为布罗特的解决方案可行,但我不明白他写了什么。 – Moon 2011-04-29 04:55:21
我发现http://forum.developers.facebook.net/viewtopic.php?pid=257432#p257432 – Moon 2011-04-29 07:01:03
一个完美的解决方案谁作者是,我会吻!!!!! – Moon 2011-04-29 07:03:21