首页 文章

Facebook应用程序的访问令牌是否会过期?

提问于
浏览
3

这是与我的Facebook application 关联的访问令牌 - 从https://graph.facebook.com/oauth/access_token?grant_type=client_credentials&client_id=APP_ID&client_secret=APP_SECRET回来的东西 . 我可以从FB获取一次并将其保存在某处以备将来使用,或者我是否需要定期刷新它?

5 回答

  • 0

    对于每个用户令牌(这是您从链接中获得的),都有一个到期日期 . 将其中一个令牌发送到https://developers.facebook.com/tools/debug并进行调试 . 你会发现它们通常会在60分钟左右到期 .

    要扩展该用户令牌,请调用exchange命令(https://developers.facebook.com/docs/offline-access-deprecation/)使其成为60天令牌 . 该用户令牌必须仍然有效(未过期)才能执行此操作 .

  • 0

    Access Token Tool - Facebook Developers

    应用程序令牌不会过期,因为它们与您的应用程序机密相关,因此应保密 .

  • -2

    我不确定,但是因为documentation没有说明你获得了访问令牌的到期时间,我想这是一个有根据的猜测它不会过期 .

    但为什么这很重要?应用程序身份验证过程比用户更简单,所以只需将令牌保存在某处(数据库,内存),然后尝试api调用,如果失败则只发出一次调用以获取新令牌,保存,然后继续通常 .

  • 19

    如果您需要令牌来管理页面,可以通过获取永不过期的令牌

    • 获取用户令牌

    • 将用户令牌交换为长期令牌(有效期为30天)

    • 使用此用户令牌获取页面令牌(此页面令牌不会过期)

    当您检查已获得的令牌时,请在Debugger上进行检查 . 您现在将看到'Expires Never' .

    文档位于Facebook Developers,场景5:页面访问令牌

  • 0

    我的应用访问令牌似乎在一个月内没有改变 . 我不知道它是否会改变 . 为了好玩,我只是改变了我的应用秘密...

    我的应用程序访问令牌然后立即更改,当我尝试使用旧的时,我收到消息正文的HTTP 400错误...

    {“error”:{“message”:“无效的OAuth访问令牌签名 . ”,“type”:“OAuthException”,“code”:190}}

    我的建议是保存访问令牌并使用它 . 除非你得到上面的消息,否则获得一个新消息并使用它 . 我尚未检查的一件事是,如果用户访问令牌(您可能正在查询)已经过期,则会得到相同的结果 .

相关问题