2014-07-15 64 views
6

我正在爲我的應用程序的用戶存儲長期訪問令牌,這些用戶已將其Facebook帳戶與其關聯。由於offline_access令牌的消亡,這些長期令牌的到期日期爲「約60天」。但是,當用戶與Facebook交互時,他們可以刷新自己。根據documentationFacebook:自動刷新長期訪問令牌

當使用您的應用的人向Facebook服務器發送請求時,這些令牌每天將刷新一次。如果沒有請求,令牌將在大約60天后過期,並且該人員將不得不再次通過登錄流程來獲得新的令牌。

我想知道什麼構成向Facebook的服務器發出請求。用戶是否必須登錄Facebook網站,移動應用程序或在某處使用Like按鈕?或者,我的應用程序是否也代表用戶計數?

此外,當令牌刷新時,他們刷新了60天嗎?或者他們刷新的時間較短?

我無法在文檔或其他問題中找到這些具體答案,所以在此先感謝任何可能有更多細節的人。

+0

你有沒有想過t他出去了嗎?我遇到了一個問題,它看起來像iOS SDK沒有刷新長時間的令牌,並且我的用戶每60天就會被註銷一次。 – bplattenburg

+1

我不記得我是否設法修復它。我認爲我實現了一個流程,如果由於令牌過期或被撤銷而導致操作失敗,應用程序會嘗試使用刷新令牌對其進行續訂。如果失敗了,我不得不要求用戶重新將他/她的帳戶與我的應用程序關聯。 不是很好的解決方法,但是我可以在當時管理最好的解決方案。 – jstlaurent

回答

1

的前行你粘貼的一個很重要: Native mobile applications using Facebook's SDKs will get long-lived access tokens, good for about 60 days

你掏出的部分僅涉及iOS和Android應用使用Facebook SDK - 該SDK進行API調用來延長令牌,該令牌將只能使用SDK和原生移動SDK生成的令牌 -

其他應用程序(例如,facebook.com上的網站,應用程序)需要使用文檔中其他位置記錄的登錄流程,並要求用戶登錄到Facebook的瀏覽器

+0

你說得很對。我必須將這一部分與下一個討論Web訪問令牌的內容混合起來。 – jstlaurent

+1

好的,但是SDK會每天獲得一個新的令牌還是會延長當前令牌的到期時間? – Filippos