对于同一个应用程序,Facebook 应用程序访问 token (不是用户访问 token )是否始终相同?我注意到它在我的应用程序中已经好几天没有改变了,所以我想知道将它变成常量而不是每次我需要它时都检索它是否是个好主意。
https://graph.facebook.com/oauth/access_token?
client_id=YOUR_APP_ID&client_secret=YOUR_APP_SECRET&
grant_type=client_credentials
http://developers.facebook.com/docs/authentication/
(搜索应用登录)
谢谢!
最佳答案
据我所知,它们目前不会过期,除非您在应用设置中更改了应用的 secret 。
我绝对建议缓存它而不是每次都调用以获取新的缓存,但是可能值得放置一些代码以自动重新检索它并在使用身份验证 token 的 API 调用失败时更新缓存错误,以防它在未来某个时候发生变化
我会推荐一些逻辑,例如:
try{
//call which needs an app access token
} catch OauthException {
// try to retrieve a new access token from Facebook
if (new access token != old access token)
//update cache of app access token
// try call again
else
//handle error some other way
}
(很明显,如果您的应用密码发生更改,您还需要更新代码以检索访问 token ,但也许有一天 token 会在密码未更改的情况下过期)
关于Facebook App Access Token 会永远存在吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7743008/