2012-02-16 25 views
1

我不得不延長存儲在我的數據庫中的所有用戶擴展現有的離線access_tokens

在這裏,我找到了方法 https://developers.facebook.com/docs/offline-access-deprecation/

但離線訪問令牌時,我用這個電話

https://graph.facebook.com/oauth/access_token?    
    client_id=APP_ID& 
    client_secret=APP_SECRET& 
    grant_type=fb_exchange_token& 
    fb_exchange_token=EXISTING_ACCESS_TOKEN 

對於某些用戶,我獲得新令牌

access_token=xxxxxxx&expires=5102358 

爲他人我不收到任何爲什麼?

我使用此代碼

$request_url = "https://graph.facebook.com/oauth/access_token?client_id=xxxx&client_secret=xxxx&grant_type=fb_exchange_token&fb_exchange_token=xxxx"; 

$信息的file_get_contents =($ request_url);

在此先感謝您的幫助。

回答

2

其他用戶的訪問令牌在嘗試轉換時可能已過期。您只能擴展未過期的訪問令牌。一旦他們到期,你將需要讓你的用戶回到應用程序的真相。

+0

我的印象是Facebook的OAuth實現沒有包含刷新令牌部分。那改變了嗎?有沒有官方文件?我找不到任何 – 2012-02-16 22:32:01

+1

https://developers.facebook.com/docs/offline-access-deprecation/請參閱*客戶端OAuth並通過新端點*部分擴展Access_Token過期時間。 – DMCS 2012-02-16 22:33:50

+1

燦爛,謝謝。 – 2012-02-16 22:37:49