我正在創建應用程序,用於彙總來自不同社交網絡配置文件的數據。因此,我創建了一個界面,客戶可以選擇允許我的應用程序訪問哪個社交網絡配置文件。界面有一個用戶點擊來授權應用程序的按鈕或者一個按鈕,如果用戶改變了她/他關於授予我的應用程序權限的想法,它會撤銷授予我的應用程序的特權。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