【问题标题】:Is it necessary to manually invalidate Facebook Access Token?是否需要手动使 Facebook Access Token 失效?
【发布时间】:2020-01-22 17:09:27
【问题描述】:

我正在使用 react-native 和 expo 构建我的第一个应用程序。

当我使用 Facebook Auth 和我的个人帐户登录我的应用程序时,我会收到一个访问令牌;然后我使用由 expo 提供的 SecureStore 将其保存在本地设备中。 如果我尝试注销,然后再次登录,我会收到一个与第一个不同的新访问令牌。 但是,如果我尝试使用旧的访问令牌发出获取请求,例如只是为了获取我的 Facebook 帐户的名称...我可以做到!

我错误地认为,每次同一个用户尝试使用 facebook auth 访问应用程序时,facebook 都会提供上一次会话中给出的相同访问令牌(如果它尚未过期或无效)。

那么……我该怎么办?只是在本地用新令牌覆盖旧令牌?或者我应该使旧令牌无效,因为它仍然有效(如果是这样,我该怎么做)?

【问题讨论】:

    标签: react-native facebook-graph-api expo facebook-access-token facebook-authentication


    【解决方案1】:

    访问令牌并非永远有效:基本用户和页面令牌的有效期为 2 小时,因此您不必自行使它们失效。扩展令牌的有效期为 60 天,但我假设您不使用这些令牌。只需用新的 Token 覆盖 Token,您无需担心旧的 Token。

    来源:https://developers.facebook.com/docs/facebook-login/access-tokens/#termtokens

    【讨论】:

    • 这是一个扩展令牌,因为我是三天前收到的,昨天我用它来获取我的帐户名称。但是,我会听从您的建议,每次用户登录应用程序时都会用新令牌覆盖旧令牌。
    猜你喜欢
    • 1970-01-01
    • 2019-02-11
    • 1970-01-01
    • 1970-01-01
    • 2018-09-09
    • 1970-01-01
    • 2019-05-13
    • 1970-01-01
    相关资源
    最近更新 更多