我们有一段代码:
checkStatus: function() {
var self = this;
FB.getLoginStatus(function(response) {
if (response.status === 'connected') {
self.isPage = false;
dojo.publish('fb/loginStatus/connected', response.authResponse);
if (self.UserRecord === null) {
self.buildAll(response.authResponse);
} else if (self.UserRecord.user_fid !== response.authResponse.userID){
self.clearAll();
setTimeout(function(){ self.buildAll(); }, 100);
}
} else {
if (response.status === 'not_authorized') {
dojo.publish('fb/loginStatus/logged', response);
} else {
dojo.publish('fb/loginStatus/notLogged', response);
}
}
},true);
},
一切正常,直到用户输入我们的Facebook页面记录的应用程序,Fb.getLoginStatus不会启动它的回调。
我的问题是,如何在应用程序中检测或执行其他操作以处理此案例?
干杯, 保罗
答案 0 :(得分:0)
我认为这是一个错误。去年当用户处于沙盒模式时,FB.getLoginStatus也存在类似的问题。 无论如何,您可以通过以下方式让用户切换回普通用户:
FB.login(function(response) {
// response handler
});
它会显示一条提示“您正在使用Facebook作为其他用户”,并要求您切换回标准用户。
另一种选择是在特定超时后显示一个facebook社交小部件(例如按钮)。它没有显示类似按钮,而是提供了一个链接,显示“切换回普通用户以使用此社交小部件。”
希望这些建议有所帮助。