【问题标题】:Facebook Tokens - I created a never-expiring token, but how?Facebook 代币 - 我创建了一个永不过期的代币,但是如何创建呢?
【发布时间】:2017-02-08 16:49:16
【问题描述】:

我一直在尝试创建一个永不过期的 Facebook 令牌(理想情况下以编程方式)并且无法做到,然后,在没有真正尝试的情况下,在不同的 Facebook 应用程序上,我设法创建了一个令牌,根据

https://developers.facebook.com/tools/debug/accesstoken?version=v2.5&q={TOKEN}

永不过期,我无法在任何其他 Facebook 应用程序或任何其他 Facebook 令牌上复制它。

我可以以编程方式 (PHP) 获取短期令牌(1/2 小时)并将其延长至 60 天,但我希望获得一个永不过期的令牌。

我想我不是在问我是如何做到这一点的,但我找不到任何解释或文档或理由说明为什么我能够通过一个令牌实现这一目标,而其他任何令牌都没有。

它在创建时是否在应用程序本身中?实际上有没有办法获得一个永不过期的令牌,即使我已经遵循了许多在线指南但只能将 1/2 小时的令牌转换为 60 天?

【问题讨论】:

    标签: facebook facebook-access-token


    【解决方案1】:

    真的有办法获得永不过期的令牌

    不,真的。即使您认为永不过期的令牌 can 也会过期 - f.e.如果创建它的用户更改了他们的帐户密码。

    我想我不是在问我是如何做到这一点的,但我找不到任何解释或文档或理由说明为什么我能够通过一个令牌实现这一目标,而其他任何令牌都没有。

    没有记录,因为当您的应用代表个人用户资料时,Facebook 希望您使用 60 天令牌。他们在很久以前就删除了offline_access 权限,特别是为了让用户早已忘记的应用程序不能代表他们行事或继续访问他们的数据。

    因此,如果您正在编写一个代表用户操作的应用程序,您真的应该使用 60 天令牌——这对于大多数情况来说应该足够了。


    现在您在此处看到的令牌是 Facebook 如何实施扩展页面访问令牌的副作用。这些没有默认到期时间 - 但是当用户被删除为页面管理员时,它们需要失效。因此,它们在内部与用于请求页面令牌的用户令牌相关联。用户令牌失效 - 页面访问令牌随之失效。这反过来又要求用户令牌在 60 天后不会自动过期。

    因此,当您扩展包含manage_pages 权限的用户令牌时,您将获得具有“无限”有效性的扩展令牌。但是,同样,这只是当前实施的副作用,将来可能会改变。

    【讨论】:

    • 谢谢,非常有用。作为您回答的一个附带问题,在您管理页面的最后,您是否建议如果包含此权限,则“可能”获得一个永无止境的令牌?再次感谢您的回答。
    • 是的。但同样,不要指望它在未来总是如此。
    猜你喜欢
    • 2014-01-13
    • 1970-01-01
    • 2018-06-11
    • 2018-06-13
    • 1970-01-01
    • 2023-02-03
    • 2012-12-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多