刷新 oauth LinkedIn 令牌

问题描述 投票:0回答:1

我正在开发一个通过 LinkedIn 登录的 iOS 应用程序。我正在使用 Web 视图供用户登录并从 LinkedIn 获取令牌。如果我理解正确,我收到的令牌在短期内有效,因此我需要使用现有令牌致电 LinkedIn 以获取具有延长期限的新令牌。请问我应该调用什么API来刷新令牌以获得具有延长有效期的新令牌?

我目前正在使用https://github.com/jeyben/IOSLinkedInAPI

ios oauth linkedin-api
1个回答
1
投票

根据 LinkedIn 的说法,没有直接的 API 可以调用来刷新 OAuth 2 令牌。应该发生的是如果:

  1. 用户已登录 LinkedIn
  2. 他们拥有当前(少于 60 天)令牌

将他们指向身份验证 URL 将触发其令牌的刷新,而无需用户登录。

在使用iOSLinkedInAPI库时,情况似乎并非如此。

我发现,身份验证流程并未在 iOS 模拟器或设备上从 LinkedIn 生成登录会话 cookie,因此从未满足要求 1。

您需要让用户通过常规 LinkedIn 登录页面登录,这将为您提供可以缓存的会话 cookie。发送用户对您的应用程序进行身份验证后,每次您想要调用身份验证 URL 来刷新用户的令牌时,您都可以将该缓存的 cookie 加载到

NSHTTPCookieStorage sharedHTTPCookieStorage
中。

如果您想检查一下,我创建了一个带有示例的帮助器类: iOSLinkedInTokenAuthorizer

© www.soinside.com 2019 - 2024. All rights reserved.