用Stormpath登录LinkedIn

时间:2016-05-03 10:51:12

标签: swift swift2 stormpath

我可以使用LinkedIn SDK快速获取我的LinkedIn帐户的访问令牌。如何使用Stormpath对此登录进行身份验证?

[更新]

让APIURL =" https://api.stormpath.com/v1/applications/ LI_APPLICATION_ID / accounts"

KGdcO+hjvARQvSwd2rfmdc+rrAsK0tA5xpE4RVNmXZgExCE+Cyk4q0nSiulDwvRHrSAkYjyjVezwdaeLCIb53g==

我将accessToken从linkedin传递到上面的函数,但它返回结果:

["消息":需要身份验证。"状态":401,"代码":401," developerMessage" :需要使用有效的API密钥进行身份验证。" moreInfo":http://www.stormpath.com/docs/quickstart/connect]

我在做什么错?

1 个答案:

答案 0 :(得分:5)

LinkedIn是一个有趣的野兽,因为他们的移动SDK有两个缺陷:

  • 最终用户需要安装LinkedIn应用程序,否则“登录”按钮会将用户重定向到App Store。
  • 无法在服务器上使用移动访问令牌。请参阅this screenshot
  • 中的LinkedIn's iOS documentation

所以 - 为了让auth在移动设备上工作,我建议使用服务器来处理流量,所以你不必担心这两个缺点。这大致是:

  1. 该应用会将用户重定向到您的网络服务器。
  2. 网络服务器启动LinkedIn身份验证流程,并将用户重定向到LinkedIn。
  3. 用户登录LinkedIn,然后重定向回您的网络服务器。
  4. 网络服务器读取响应,并与LinkedIn交换授权码以获取访问令牌。
  5. 网络服务器将您的用户重定向回应用程序,使用自定义网址方案向其发送LinkedIn访问令牌。
  6. 该应用使用LinkedIn访问令牌登录Stormpath。
  7. 听起来很复杂?它实际上比看起来更直接。如果你想尝试一下,我实际上写了一些demo code for this flow using Express.js & Swift。让我知道它是否适合你!