我正在创建应用程序,用于汇总来自不同社交网络配置文件的数据。因此,我创建了一个界面,客户可以选择允许我的应用程序访问哪个社交网络配置文件。界面有一个用户点击来授权应用程序的按钮或者一个按钮,如果用户改变了她/他关于授予我的应用程序权限的想法,它会撤销授予我的应用程序的特权。Facebook JavaScript SDK - getLoginStatus始终返回未知
我的流程如下:
- 在页面加载请问Facebook在
- 用户是否登录如果用户在一个选项来断开提供
- 如果用户登录没有登录(或状态未知< - 这很重要),提供登录选项。
这就像它应该。但一件奇怪的事情发生。
起初
FB.getLoginStatus(loginStatusCallback, true);
function loginStatusCallback(response) {
if(response.status == 'not_authorized') {
....
} else if(response.status == 'unknown') {
....
} else {
....
}
}
对于登录我用
FB.login(loginCallback);
登录成功,我采取相应的行动。但是,如果我重新加载页面response.status将是'未知'即使我已登录到Facebook和我的应用程序在登录到Facebook登录的应用程序的列表。据我了解SDK文档'未知'如果我没有登录到Facebook(这相当于没有在我的应用程序连接)应该是响应。所以,即使用户已经登录,他也会被困扰再次登录,这是不可接受的。
正如你所看到的 - Facebook的往返参数设置为true。 SDK已正确初始化。问题不在应用程序端,而在SDK端。 – Rouz