如何在接收访问令牌时解释oauth expires = 4位数代码

CF_*_*ner 10 facebook facebook-graph-api access-token

在我的应用程序中,某些点击需要生成facebook帖子.如果我没有访问令牌,我会弹出facebook登录界面.

在接收到访问令牌时,我还在末尾收到"expires = 4位数".

例如expires = 3994

这4位数代码是什么意思?

访问令牌到期后的时间是几秒钟吗?

或者它是访问令牌到期之后的刻度数.

我已经看到一些facebook api代码,它需要12位数的到期代码,但我只收到4位数.

我需要知道访问令牌是否已过期的原因是我不希望我的帖子失败,并且如果它已过期则想要弹出登录屏幕.

提前致谢.

Teo*_*gul 6

这是到期前的几秒钟.即

3994 / 60 / 60 =~ 1 hour
Run Code Online (Sandbox Code Playgroud)

如果你看到更多数字(特别是在画布访问链接上),它可能是一个Unix时间戳,你可以很容易地转换为秒.此外,您可以使用以下范围来获取非过期令牌(但它将在授权弹出窗口中显示其他警告):

scope=offline_access
Run Code Online (Sandbox Code Playgroud)

在我的项目(http://www.nbusy.com/projects/communicator)中,我使用类似下面的内容来了解​​令牌到期时间:

DateTime eprityTime = DateTime.Now.AddSeconds(3994);
Run Code Online (Sandbox Code Playgroud)

并将其与DateTime.Now进行比较,并在令牌过期时关闭会话.