2012-03-09 22 views
0

我很喜歡使用Graph API,我剛剛閱讀了關於offline_access權限的未來棄用,這對我來說是一個問題。使用圖形API而不登錄用戶

我知道我有一個非常糟糕的英語,但我會盡我所能解釋我。我希望你能理解我。

據我所知,當你發送一些FB信息的請求,並且你傳遞一個訪問令牌代表用戶「爲你」提供該令牌(我要求用戶授權我應用程序與客戶端流程,然後我存儲訪問令牌爲未來的請求),並沒有用戶登錄FB,錯誤ocurrs和請求失敗。

就我而言,當我向FB發送信息請求時,用戶登錄FB是不可能的(我不知道如何用英語解釋原因,但這是不可能的)。因此,在知道之前,我正在使用具有offline_access權限的令牌,然後我可以代表授權應用的用戶發送請求以進行脫機訪問。

我想知道的是,如果知道offline_access權限將被棄用將不可能。我的意思是,我想知道是否有一種解決方案可以讓我在沒有登錄FB的情況下代表用戶發送請求(我需要一個訪問令牌,在他授予應用程序授權後可以在該用戶的註銷後存活) 。

對不起,我的英語不好,我希望你能理解我。


我會盡量讓我的問題以更好的方式:

我想要做的是一個應用程序,從電視的用戶訪問並沒有可供使用的瀏覽器。因此,我不知道如何將用戶重定向到FB以進行身份​​驗證和授權應用程序。因此,我所做的是準備一個「配置網站」,用戶可以在該網站上授權應用程序進行離線使用(將其重定向到FB並要求他們獲得離線許可)。我存儲離線令牌,然後,當用戶訪問應用程序時,我可以使用這些令牌創建Graph API請求,並且我可以獲得FB信息,即使沒有用戶登錄FB(沒有瀏覽器或其他用戶登錄到用戶可以登錄Facebook)。

從現在開始,offline_access權限將被棄用。所以...如何在沒有登錄用戶且沒有offline_access權限的情況下創建Graph API調用?

我試圖使用新的端點來獲得一個新的令牌,當我收到錯誤,說一個令牌無效,因爲用戶從FB註銷,但這個端點的響應是完全一樣的:我用新請求發送的令牌無效,因爲用戶已註銷,並且如果用戶未再次登錄,我無法獲取新令牌。但是,由於用戶不使用瀏覽器,每次訪問應用程序時我都無法將用戶重定向到FB以進行登錄。

回答

0

不,您的訪問令牌在用戶註銷後不應過期。訪問令牌將在一段時間後過期,但您可以在用戶每次與應用程序交互時默默地將其延長60天:https://developers.facebook.com/docs/offline-access-deprecation/

+0

感謝您的回答! 如果你在回答中說的是正確的,我做錯了什麼,但我不知道如何。 我在應用程序配置上激活遷移選項「棄用脫機訪問:」。然後我做這個測試: 1)我連接到我的應用程序授權應用程序(沒有offline_access權限,因爲它已被棄用)。應用程序存儲獲取的令牌。 2)我從Facebook註銷,用於測試令牌是否可以在註銷後存活。 3)我使用在步驟1中獲得的令牌來請求FB信息,並且FB答案告訴由於用戶註銷令牌無效。怎麼了? – 2012-03-09 20:35:52

+0

我想你正在使用客戶端OAuth。從上面的鏈接閱讀「_客戶端OAuth和通過新端點_延長Access_Token到期時間」一節,這應該有所幫助。 – 2012-03-09 23:11:21

+0

是的,該部分是我認爲它會幫助我的第一部分。但是我嘗試使用這個新的端點並且錯誤仍然存​​在。如果我的訪問令牌沒有脫機權限(因爲它已被棄用),然後用戶從FB註銷,我嘗試使用該令牌發出請求,則會出現「用戶已註銷」錯誤,如果我嘗試發送一個請求到該端點來擴展這個過期的標記,我得到了和答案一樣的錯誤(它告訴我這個標記因爲用戶註銷而無效)。 – 2012-03-10 10:14:29

相關問題