我有一个Facebook画布应用,首先调用FB.getAuthResponse()
,如有必要,调用FB.login()
。 JS SDK的文档明确指出FB.login()
打开一个登录弹出窗口,当我直接点击画布URL时这是正确的。但是,当我在画布页面中作为匿名用户执行相同操作时,会出现“未登录”灯箱并重定向到登录页面。
有没有办法统一这种行为(最好总是使用弹出窗口)?
答案 0 :(得分:1)
当使用JS SDK - FB.login()
accepts the display
parameter定义窗口的显示模式时,可以明确指定登录窗口的“格式”。
最终代码如下:
var authResponse = FB.getAuthResponse();
if (authResponse && authResponse.signedRequest) {
addFieldsAndSubmit(authResponse.signedRequest);
} else {
FB.login(function(response) {
if (response && response.authResponse) {
addFieldsAndSubmit(response.authResponse.signedRequest);
}
}, {scope:'email', display: 'popup'});
}