前言
本篇將分享如何利用 Facebook 的圖形 API 測試工具,以及 PHP 來取得長期權杖 (long lived token),以及永不過期權杖 (never expired token)
目前正在做一個 Facebook 的直播拍賣優化系統的後端,發現前端的短期 (short lived token) 權杖有效時間只有不到兩個小時,相較於 Android 的三個月,以及 iOS 的兩個月,實在是有夠短。
雖然說 code 寫好之後其實也無所謂,但是就想來研究一下如何拿到長期的權杖 (long lived token)
Facebook 的圖形 API 測試工具
長期權杖 (long lived token)
首先,讓我們先用 Facebook 的圖形 API 來拿長期權杖 (long lived token)
輸入剛剛獲得的權杖
按下’提交’
永不過期的粉絲專頁權杖
接下來,讓我們使用 Facebook 的圖形 API 測試工具來取得永不過期的權杖 (never expired token)
PHP
長期權杖 (long lived token)
現在讓我們使用 PHP 來透過呼叫 Facebook 的 API 來取得長期權杖 (long lived token)
- 使用 PHP 的 function
file_get_contents
來呼叫 Facebook 的 APIpublic static function getLongLivedToken($token)
{
$url = 'https://graph.facebook.com/oauth/access_token?grant_type=fb_exchange_token&client_id=yourClientID&client_secret=yourClientSecret&fb_exchange_token=shortLivedToken;
return json_decode(file_get_contents($url), true);
} - 會得到以下資訊:
{
"result": true,
"response": {
"access_token": "EAAEpKfFACZA8BAGyTFU29VFIlEjhDaUe66eliyWdGQDfVTBUUdFZBZAGeZBEgTEwxgthvdABuzECYi1ahqm8ZCYNRSV9YMnegq7XxCouP1sR8kXMdnNFysGb2IHZBhSB3KENeTZCBzHrFSJ9BJLt9k6xkuWkJsVHnG0KahmFmybKTG6pVaFoZATN",
"expires_in": 5182393
}
}
結語
至於如何利用 PHP 來取得永不過期的粉絲專頁權杖 (never expired token),似乎需要提升 APP 的權限,這方面需要審查,所以我就暫時無法測試啦。
留言