LinkedIn,401,无法验证访问令牌
LinkedIn, 401, Unable to verify access token
我用 this guide 建立了一个展示柜 - 使用 LinkedIn 登录到特定站点。
一切都完美,直到我在广大观众面前演示它并崩溃了:-(这是一个巨大的失败,我想知道为什么。这是我所做的:
1.On 用户可以单击 Sign in with LinkedIn
按钮并被重定向到类似 link:
的登录页面
https://www.linkedin.com/oauth/v2/authorization?redirect_uri=[my_callback]&client_id=[my_client_id]&response_type=code&state=[securely_random]&scope=r_basicprofile%20r_emailaddress
2.The 用户允许应用程序并被发送回 my_callback
3.In my_callback
我创建一个 POST 到 https://www.linkedin.com/oauth/v2/accessToken
以获得访问令牌。我使用 LinkedIn 发送的代码,正确的客户端 ID 和密码。一切正常,例如响应可能是:
{
"access_token": [access_token],
"expires_in": 5184000
}
4.I发出经过身份验证的请求以从端点https://www.linkedin.com/v1/people/~:(firstName,lastName,email_address)
获取配置文件数据
Headers:
x-li-format: json
Authorization: Bearer [access_token]
我开始偶尔收到错误 401,例如:
{
"errorCode": 0,
"message": "Unable to verify access token",
"requestId": "YX21AN6NZG",
"status": 401,
"timestamp": 1483732371224
}
似乎有些请求还是随机通过了...
其他详细信息:
- user 已登录 LinkedIn
- 用户是 LinkedIn 应用程序的管理员
- 我已经检查了应用程序中的限制(throttle limits)。
https://www.linkedin.com/developer/apps
有售。能看到的一切都是绿色的。
- 我已经尝试了这个
中的所有建议和技巧
- 我的应用未上线
我很纳闷!
问题:有明显错误吗?
问题:是否有任何隐藏的节流限制(或安全工具)用于限制特定user/app组合的访问令牌数量? (我总是使用同一个用户,并且在大失败之前我进行了非常积极的测试)
更新: 在接下来的两天里,如上所述,登录再次开始顺利进行。不再有 401-s...:-X 我没有对代码库进行任何更改。那么这是某种油门限制还是只是李周五心情不好?
万一有人好奇我从 LI 支持那里得到了我的问题的答案:
很遗憾,我们真的无法协助解决 API 问题和第 3 方应用程序。我的猜测是周五出现了小问题,你是时机不对的受害者。
我接受我是受害者的解释,所以这回答了我的问题...
我有一个访问令牌可以通过 API 获取数据,但现在它已停止工作。我仔细阅读了 LinkedIn 的文档:https://developer.linkedin.com/docs/oauth2 并想出了为什么会发生这种情况。
文档指出,用户的会话与访问令牌相关联。因此,注销会话意味着访问令牌无效。这是有道理的,因为这正是我所看到的。
oauth2 expired-at 只是此访问令牌有效的最终时间的时间戳。但是显然它可以随时失效。
其他 oauth2 实现显示刷新访问令牌的功能,Linkedin 不提供此功能。因此用户每次都必须手动刷新它。不确定这是设计使然还是他们还没有解决。总的来说,他们的 API 感觉很过时。
我用 this guide 建立了一个展示柜 - 使用 LinkedIn 登录到特定站点。 一切都完美,直到我在广大观众面前演示它并崩溃了:-(这是一个巨大的失败,我想知道为什么。这是我所做的:
1.On 用户可以单击 Sign in with LinkedIn
按钮并被重定向到类似 link:
https://www.linkedin.com/oauth/v2/authorization?redirect_uri=[my_callback]&client_id=[my_client_id]&response_type=code&state=[securely_random]&scope=r_basicprofile%20r_emailaddress
2.The 用户允许应用程序并被发送回 my_callback
3.In my_callback
我创建一个 POST 到 https://www.linkedin.com/oauth/v2/accessToken
以获得访问令牌。我使用 LinkedIn 发送的代码,正确的客户端 ID 和密码。一切正常,例如响应可能是:
{
"access_token": [access_token],
"expires_in": 5184000
}
4.I发出经过身份验证的请求以从端点https://www.linkedin.com/v1/people/~:(firstName,lastName,email_address)
Headers:
x-li-format: json
Authorization: Bearer [access_token]
我开始偶尔收到错误 401,例如:
{
"errorCode": 0,
"message": "Unable to verify access token",
"requestId": "YX21AN6NZG",
"status": 401,
"timestamp": 1483732371224
}
似乎有些请求还是随机通过了...
其他详细信息:
- user 已登录 LinkedIn
- 用户是 LinkedIn 应用程序的管理员
- 我已经检查了应用程序中的限制(throttle limits)。
https://www.linkedin.com/developer/apps
有售。能看到的一切都是绿色的。 - 我已经尝试了这个
- 我的应用未上线
我很纳闷!
问题:有明显错误吗?
问题:是否有任何隐藏的节流限制(或安全工具)用于限制特定user/app组合的访问令牌数量? (我总是使用同一个用户,并且在大失败之前我进行了非常积极的测试)
更新: 在接下来的两天里,如上所述,登录再次开始顺利进行。不再有 401-s...:-X 我没有对代码库进行任何更改。那么这是某种油门限制还是只是李周五心情不好?
万一有人好奇我从 LI 支持那里得到了我的问题的答案:
很遗憾,我们真的无法协助解决 API 问题和第 3 方应用程序。我的猜测是周五出现了小问题,你是时机不对的受害者。
我接受我是受害者的解释,所以这回答了我的问题...
我有一个访问令牌可以通过 API 获取数据,但现在它已停止工作。我仔细阅读了 LinkedIn 的文档:https://developer.linkedin.com/docs/oauth2 并想出了为什么会发生这种情况。
文档指出,用户的会话与访问令牌相关联。因此,注销会话意味着访问令牌无效。这是有道理的,因为这正是我所看到的。
oauth2 expired-at 只是此访问令牌有效的最终时间的时间戳。但是显然它可以随时失效。
其他 oauth2 实现显示刷新访问令牌的功能,Linkedin 不提供此功能。因此用户每次都必须手动刷新它。不确定这是设计使然还是他们还没有解决。总的来说,他们的 API 感觉很过时。