【问题标题】:Facebook Pages (/me/accounts) access_token Expiration?Facebook 页面 (/me/accounts) access_token 过期了吗?
【发布时间】:2012-03-03 09:20:52
【问题描述】:

请耐心等待,我知道access_token 的问题已经被问了一千次,但我似乎找不到这个特定问题的答案。

Facebook 主页(不是应用程序,不是用户)访问令牌是否有过期日期?

我知道:

  • offline_access 已被弃用。
  • 我可以申请一个60天的用户access_token

第 1 步:我使用 Facebook Connect 并获得了一个 用户 access_token,它拥有 manage_pages 权限(默认情况下,此令牌在 2 小时后过期,可延长至 60 天)

第 2 步:然后我调用 /me/accounts 并获取一组用户页面,每个页面都有一个列出的页面 access_token

第 3 步:我可以在随后的 API 调用中使用 页面 access_token 来执行诸如发布到用户页面之类的操作。

我需要用户能够安排页面更新在未来发生(当他们不在线时)。

所以问题又是:

  • /me/accounts返回的页面access_token的到期日期是多少?

如果到期日期与某事有关,那么它与什么有关?

  • 请求/me/accounts 时使用的用户 access_token 的到期日期?
  • /me/accounts提出请求后的60天?

对于我的困惑,我深表歉意,Facebook 文档在描述这些访问令牌方面似乎非常不足。

【问题讨论】:

    标签: facebook facebook-graph-api access-token


    【解决方案1】:

    我刚刚创建了一个全新的应用程序。确保启用了已弃用的脱机访问。去资源管理器,在下拉列表中找到我的新应用程序,授予自己 manage_pages,去我/帐户获取页面访问令牌之一,然后对其进行 linted。哇! 1 小时到期。

    编辑

    我尝试交换那个 1 小时的页面令牌,但我收到了来自 fb 的错误。

    我回到了用户访问令牌,并用它换了一个 60 天的令牌。在 linter 中验证这是 60 天。回到我/帐户并抓住其中一个页面访问令牌并对其进行检查。惊喜!从那里获得了 60 天的令牌。

    所以这个故事的寓意是,你不能交换页面令牌,只能交换用户令牌。但是使用 60 天的用户令牌,您可以获得 60 天的页面令牌。 :)

    【讨论】:

    • 天才!你对 Facebook 的工具了如指掌。谢谢!
    • 后续问题:有没有办法从graph api获取Facebook的Linter返回的数据?例如。通过点击graph.facebook.com/oauth/TOKEN 或其他方式?
    • 我知道me/permissions 可以获取当前访问令牌的权限列表,但它不包含任何过期信息。如果我遇到什么...我会回来报告这里。
    • 我猜下一个问题是,能否从该页面访问令牌中获取 60 天令牌?
    • 太棒了!非常感谢您的跟进!
    猜你喜欢
    • 1970-01-01
    • 2012-03-03
    • 2013-02-28
    • 1970-01-01
    • 1970-01-01
    • 2011-12-03
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    相关资源
    最近更新 更多