1

想象一下,我有一個移動應用程序,然後我創建一個新的Facebook應用程序,我用它通過它登錄用戶。爲了登錄到應用程序,用戶必須授予user_likes權限。 然後,我可以使用app_token訪問他們的user_likes請求到facebook圖表。我測試過了。而且,我意識到只有user_likes設置爲「公開」纔會顯示出來。沒有顯示所有私人或唯一的朋友的user_likes。權限授予後,Facebook應用有哪些數據可用?

這是有意識的行爲嗎?我的意思是,如果某個用戶授予我對user_likes的訪問權限,並且在此之後他沒有明確撤銷權限,我應該能夠獲得user_likes還是不是?

在此先感謝。

回答

2

您需要使用用戶訪問令牌,而不是應用訪問令牌。這就是他們的目的。

+0

謝謝您的回覆。是的,通過用戶訪問令牌,我可以檢索該數據,但是如果我需要在移動應用程序的服務器端運行一些代碼(例如根據user_likes隱藏/顯示信息),那麼使用該代碼會更容易app_token,而不是存儲(並在到期時重新驗證)應用中每個用戶的用戶訪問令牌。然而,就我目前閱讀的內容而言,你是迴應,似乎沒有別的辦法。 – sparragol

+0

正如我所說的,您無法從App Access令牌獲取數據,因爲它不包含用戶權限,這是OAuth的一個基本概念。爲什麼不將用戶訪問令牌添加到從您的移動應用程序到您的服務器的請求中,並且服務器使用它來查詢信息?如果對你有用,請接受我的回答。謝謝。 – Tobi

+0

是Tobi,這就是我從一開始就想到的。只是被問到了app_token是否可行,而不是以前的方法,只是稍微麻煩一點,我之前沒有找到明確的答案。 – sparragol