Facebook response.authResponse为空
我写了以下代码来检查facebook的登录状态Facebook response.authResponse为空,facebook,facebook-like,Facebook,Facebook Like,我写了以下代码来检查facebook的登录状态 FB.getLoginStatus(function(response) { if (response.status === 'connected') { var user_id = response.authResponse.userID; var page_id = "app_id"; var fql_query = "SELECT uid FROM page_fan WHERE page_id = "
FB.getLoginStatus(function(response) {
if (response.status === 'connected') {
var user_id = response.authResponse.userID;
var page_id = "app_id";
var fql_query = "SELECT uid FROM page_fan WHERE page_id = "+page_id+"and uid="+user_id;
var the_query = FB.Data.query(fql_query);
the_query.wait(function(rows) {
if (rows.length == 1 && rows[0].uid == user_id) {
alert("liked the page");
}
else {
alert("not liked ");
}
});
}
else if (response.status === 'not_authorized') {
}
else
{
alert("not logged in");
}
});
我在第一个if部分中得到response.authResponse
的值,即在if(response.status==='connected'){}
部分中,但我在部分中得到response.authResponse
null,否则如果(response.status=='not_authorized'){}
部分
有人知道吗
请帮助我。如果您未连接,authResponse对象为空。。。由于您尚未授权,这似乎是合乎逻辑的…为了能够调用图表获得喜欢,您需要让用户使用
user\u likes
权限添加/验证您的应用程序,然后您才能阅读它。因此,在上面的代码中,当它们属于两种情况之一时,调用FB.login()(或在页面上显示FB login按钮)
如果您不想强制用户添加/验证您的应用程序,则需要将您的应用程序配置为页面选项卡应用程序,然后您可以获取已签名的\u请求(https://developers.facebook.com/docs/authentication/signed_request/)并解码,提供访问权限,以了解用户是否喜欢您的应用程序作为页面选项卡的页面。我想要的是,任何访问我的FB页面的用户都会收到一个弹出窗口,只有当他单击“喜欢”按钮时,弹出窗口才会消失,我已经这样做了,但它只与一个FB用户一起工作,一个是此页面的管理员,对于所有其他用户,它返回“未授权”状态