2013-04-10 83 views
1

我有一个用于请求offline_access权限的FB应用程序。在某些时候,我改变了这一点,并使用了60天有效的access_tokens。Facebook访问令牌缺失过期属性(offline_access弃用后)

现在,我在数据库中存储访问令牌和过期时间(以ms为单位的整数)。每次用户使用应用程序时,他仍然有一个有效的令牌(我检查到期时间),我尝试扩展该令牌(每天不超过一次)。

我的问题是,我开始获得新的令牌没有到期字段。当我用调试器检查其中的一些时,它说永不过期。

这怎么可能? 12月5日是不是offline_access? 我怎样才能确保每次当我申请访问令牌时,我都会得到一个带有到期时间的令牌?

回答

1

如果向用户请求页访问令牌,Facebook仍会发出永不过期的令牌。

流程是这样的(Facebook的回应中斜体):

  • 请求初始用户令牌
    • 的OAuth令牌过期60天的时间授予从现在
  • 请求页面令牌页面用户是管理员
    • 为所有页面和用户令牌授予的oauth令牌被扩展为永不过期(除非被吊销)。

没有很多的任何Facebook的页面上此文件,但我已经很广泛的测试这一点,它发生的每一次。