请耐心等待,我知道 access_token
问题已被问过一千次,但我似乎找不到这个特定问题的答案。
Facebook 页面(不是应用程序,不是用户)访问 token 是否有过期日期?
我知道:
offline_access
已弃用。- 我可以请求一个 60 天的用户
access_token
第 1 步:我使用 Facebook Connect 并获得一个用户access_token
,它具有manage_pages
权限(默认情况下,此 token 将在 2 小时后过期,可延长至 60 天)
第 2 步:然后我调用 /me/accounts
并获取一组用户页面,每个页面都有一个列出的页面 access_token
第 3 步:我可以在后续 API 调用中使用页面 access_token
来执行诸如发布到用户页面之类的操作。
我需要用户能够安排页面更新在将来发生(当他们不在线时)。
那么问题又来了:
- 从
/me/accounts
返回的页面access_token
的到期日期是多少?
如果过期日期与某物相关联,那么它与什么相关联?
- 请求
/me/accounts
时使用的用户access_token
的到期日期? - 向
/me/accounts
提出请求后 60 天?
对于我的困惑,我深表歉意,Facebook 文档在描述这些访问 token 方面似乎非常短。
最佳答案
我刚刚创建了一个全新的应用程序。确保已启用弃用的离线访问。转到资源管理器,在下拉列表中找到我的新应用程序,授予自己 manage_pages,转到 me/accounts 抓取其中一个页面访问 token ,然后对其进行检查。哇! 1 小时到期。
编辑
我尝试交换那个 1 小时的页面 token ,但我收到了来自 fb 的错误消息。
我回到用户访问 token ,并将其换成 60 天的。在 linter 中验证这是 60 天。回到 me/accounts 并获取其中一个页面访问 token 并对其进行检查。惊喜!从那里得到一个 60 天的 token 。
所以这个故事的寓意是,您不能交换页面 token ,只能交换用户 token 。但是使用 60 天的用户 token ,您可以获得 60 天的页面 token 。 :)
关于Facebook 页面 (/me/accounts) access_token 过期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9235695/