2012-12-11 96 views
0

如何通過iOS SDK檢查訪問令牌是否已過期?我的應用程序開始從緩存加載會話時,我打電話[FBSession openActiveSessionWithReadPermissions:permissions allowLoginUI:NO completionHandler:nil]。然後Facebook iOS SDK 3.1.1:如何檢查過期的令牌?

活動會話看起來是這樣的:

<FBSession: 0x1fdcbae0, 
state: FBSessionStateOpen, 
loginHandler: 0x0, 
appID: 1234567890, 
urlSchemeSuffix: , 
tokenCachingStrategy:<FBSessionTokenCachingStrategy: 0x1fdcb840>, 
expirationDate: 4001-01-01 00:00:00 +0000, 
refreshDate: 2012-12-10 07:09:18 +0000, 
attemptedRefreshDate: 0001-12-30 00:00:00 +0000, 
permissions:(
    email 
) 

FBSession.activeSession.isOpen總是返回YES。爲什麼在遙遠的將來expirationDate

在我的服務器上,我通過PHP調用一個方法,並且我被告知會話已經過期。我該如何處理?

回答

0

檢查過期令牌的最佳方法是實際嘗試API調用並處理錯誤。例如,打開電話後,您可以在完成處理程序中調用startForMeWithCompletionHandler:。在startForMeWithCompletionHandler:完成處理程序中,您可以檢查錯誤。

看到這個文檔獲取更多信息關於如何處理這些錯誤,你可能得到的結果: https://developers.facebook.com/docs/reference/api/errors/

相關問題