2014-04-04 42 views
0

我正在研究一個社交鬧鐘,它可讓您通過智能手機應用程序在Facebook上登錄。接下來要做的是在單獨的網站上顯示您的Facebook供稿。所以,當我在登錄時存儲用戶訪問令牌時,是否能夠在沒有用戶登錄的情況下僅通過訪問令牌從Facebook API獲取數據?只有用戶訪問令牌才能調用facebook api

謝謝!

回答

1

如果您有活動用戶的訪問令牌,則可以代表用戶執行活動。

但是這個令牌很快就會過期。所以也許你可以在服務器端擴展這個令牌,那麼它的有效期將是60天。但在到期之前,請確保刷新令牌,否則它會再次失效。

閱讀此documentation以瞭解有關訪問令牌及其擴展的更多信息。

+0

那麼我應該如何使用Graph API進行API調用?似乎沒有在沒有登錄的情況下工作?感謝您的幫助! –

+0

由於您正在存儲令牌,因此可以使用該令牌進行調用,例如:'/ me/feed?access_token = {saved-token}'。希望你現在明白了。 –

+0

當我使用'我'或其他用戶ID時,該用戶已登錄,對吧?我不得不從用戶那裏檢索數據,但他沒有登錄。 –

0

終於找到解決方案了!當用戶登錄時,我收到一個短版活的道理,然後我做一個AJAX調用PHP文件,通過使用

$facebook->setExtendedAccessToken(); 
    $accessToken = $facebook->getAccessToken(); 

接下來,我存儲$的accessToken得到我長期住令牌(這是長壽的)在數據庫中。然後,在我的鬧鐘(另一個網站)上,我從數據庫(ajax)獲取令牌,並且可以代表用戶開始進行API調用,而無需他登錄!

希望我也幫助了其他人!如果您有任何問題,只需提問一下,我就有點擅長:)!

感謝您的幫助!

乾杯