1

我有一个 Facebook 画布应用程序,它FB.getAuthResponse()首先调用,如有必要,FB.login(). JS SDK的文档清楚地指出FB.login()打开一个登录弹出窗口,当我直接点击画布URL时这是正确的。但是,当我在画布页面中以匿名用户身份执行相同操作时,会出现“未登录”灯箱并重定向到登录页面。

有没有办法统一这种行为(最好总是使用弹出窗口)?

4

1 回答 1

1

事实证明,在使用 JS SDK 时可以显式指定登录窗口的“格式” -FB.login()接受display定义窗口显示模式的参数。

最终代码如下所示:

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'});
}
于 2013-04-15T15:48:47.013 回答