【问题标题】:Mailcore: Listen for failed requestMailcore:侦听失败的请求
【发布时间】:2015-02-21 18:47:37
【问题描述】:

我已与 Gmail OAuth 集成,并且运行良好。剩下的唯一问题是使用refreshToken 在到期时检索新的accessToken。我将这两个都保存在 CoreData 中,因此我可以在我的应用程序的任何地方轻松访问它们。我的问题是我不知道在哪里进行刷新。 当请求失败时,Mailcore 是否提供 NSNotification 或类似信息?这样我知道令牌需要刷新,我可以刷新它并使用新令牌重试请求。

更新:

我当前的解决方案只是在每次应用激活时刷新令牌。我宁愿只在令牌过期时(即请求失败时)刷新令牌。

【问题讨论】:

  • 使用OAuth2,检查操作的错误。当出现身份验证错误时,可能意味着令牌已过期。
  • 谢谢。我正在做一个相当大的项目,所以我希望有更全球化的东西(例如,当出现操作错误时发布 NSNotification),但我可以自己解决类似的问题。

标签: oauth-2.0 google-oauth mailcore2


【解决方案1】:

与其随机猜测何时是更新令牌的好时机,不如使用“expires_in”值运行某种逻辑,判断是否有足够的时间来保证刷新令牌。或者我做什么是第一次抓取令牌并设置时间戳。然后,在下一次调用与 IMAP/SMTP 相关的任何事情时,我检查当前时间戳是否自上次更新以来 >= 50 分钟(令牌仅适用于一个小时,因此这似乎运作良好)。

希望这会有所帮助! :)

【讨论】:

    猜你喜欢
    • 2017-05-16
    • 2017-12-26
    • 2021-08-20
    • 1970-01-01
    • 2020-10-29
    • 1970-01-01
    • 2016-05-15
    • 2020-04-03
    • 1970-01-01
    相关资源
    最近更新 更多