关于safari的facebook app iframe登录问题 [英] facebook app iframe login issue on safari
问题描述
我有一个使用iframe的Facebook应用。
I have a facebook app that uses iframe.
facebook将我的网站加载到iframe中。当我点击链接时,我的网站使用灯箱显示iframe以显示Facebook登录信息。一切都在ff上工作正常,即铬。在safari上,框架会无限重新加载。
facebook loads my website inside an iframe. When I click a link, my website display an iframe using lightbox to display a facebook login. Everything works fine on ff, ie, chrome. On safari, frame keeps reloading infinitely.
PHP代码
$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");
login.php中的javascript
javascript in 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;
});
};
任何想法都将受到赞赏!
any ideas would be appreciated!
谢谢!
推荐答案
如果您还在寻找解决方案,请尝试构建P3P标头
http://www.p3pwriter.com/LRN_121.asp
If u r still looking for solution then try building P3P headers http://www.p3pwriter.com/LRN_121.asp
通常在iframe中设置cookie时存在安全问题,p3p标头充当网站与客户端计算机之间的协议,保证cookie中保存的信息不会被滥用。
usually there is a security issue when setting cookies inside iframe, p3p headers act as an agreement between website and client's computer guaranteeing that the information saved in cookies wont be misused.
快速解决方案: http://planet.admon .org / how-to-implement-p3p-http-headers-for-cross-site-cookies /
怎么做:
复制粘贴到您的标题中:
what to do: copy paste this in your header:
<?php
header('P3P: CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"')
?>
就是这样!
这篇关于关于safari的facebook app iframe登录问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!