当且仅当用户在发出OAuth2请求时登录到LinkedIn时,它才起作用。
如果用户未登录,则会遇到错误。
我们的行动顺序:
https://api.linkedin.com/v1/people/\~
之后,我们将收到一份401,内容如下:
{
"errorCode": 0,
"message": "Unable to verify access token",
"requestId": "C0DUCX81SA",
"status": 401,
"timestamp": 1421946470523
}
有时,经过一段时间后,使用相同的访问令牌重试会得到200。有时不会。
如果用户在“401期间”登录LinkedIn,那么之前获取的访问令牌就会神奇地开始工作。
我不知道如何解决这个问题,因为这似乎是领英的一个问题。
有没有人提出任何建议或以前有人看到过这种行为?
我们尝试了cookie设置、请求前的等待时间等。
我们正在将LinkedIn OAuth2身份验证添加到Zotonic[1],但现在被一个不工作的模块卡住了。
[1] http://zotonic.com/
编辑:
有人提到了LinkedIn上的两个讨论。他的回答现在遗憾地从下面的讨论中消失了。
这些是链接:
https://developer.linkedin.com/forum/unable-verify-access-token
https://developer.linkedin.com/forum/unauthorized-invalid-or-expired-token-immediately-after-receiving-oauth2-token
在这些讨论中,我尝试了所有建议,但都无济于事。
编辑#2:
查看LinkedIn上的第一次讨论表明,我不是唯一一个有这些一致性问题的人。如果用户清除了cookie或必须在OAuth“舞蹈”期间登录LinkedIn,LinkedIn就出了问题https://developer.linkedin.com/forum/unable-verify-access-token#comment-36950
更新
感谢Matthijs Bierman,已解决,请参阅以下答案。
来自移动SDK的访问令牌给出此错误:
使用web OAuth 2.0生成的访问令牌不会遇到任何问题
解决方案:提供以下 2 个标头
例如:
Url:https://api.linkedin.com/v1/people/~?格式=json
标头:
Authorization: Bearer AQVYqTNB3bFRAIatBcp4hM1r-......
x-li-src: msdk
注意:
如果 AccessToken 是使用 OAuth 2.0 生成的,您可以通过删除第二个标头 (x-li-src) 来使用相同的上述 api。
我们在电话里谈过,原来你遇到了和这里一样的问题。LinkedIn不接受身份验证
标头,并需要一个请求参数:oauth2_access_token
。
对我来说,https://api.linkedin.com/v1/people/~?format=json
添加正则标头
授权:不记名 [访问令牌]
直到我通过sdk中的链接并测试后发现,它们还需要您添加请求头
x-li-src: msdk
有了这两个头球,https://api.linkedin.com/v1/people/~?format=json的呼叫成功了。
希望Linkedin很快就能解决这个未记录的需求。。。
我在刷新访问令牌时得到这个错误:访问令牌无法刷新。请重新验证 这一错误此前曾在2017年4月报告过。OneLogin文档声明刷新令牌可以使用45天左右。我的刷新令牌已经有20个小时了。是文档正确还是刷新令牌的寿命更短?我可以做获取访问令牌和撤销令牌罚款。 public RootObject RefreshToken(HttpRequesterDM rDM){restsharp.deserializ
我正在使用以下示例来玩Spring Cloud OAuth2实现: https://github.com/spring-cloud-samples/authserver https://github.com/spring-cloud-samples/sso 第一个是OAuth服务器,它在对用户进行身份验证时生成JWT令牌。第二个是正在被消耗的资源。根据OAuth规范,资源将用户的身份验证转发给au
在错误=我正在获取“消息”的上下文中需要帮助:“Access token validation Failure.Invalid Pavior.”, 我正在使用OAuth中的授权代码授予类型。我已经使用Azure广告策略将自定义声明映射到应用程序。因此,如果用户Scope=appid/.default,那么我将在令牌中获得一个自定义声明,并在Azure AD上对应用程序具有API权限,如user.r
我在使用jwt.io验证我的azure广告访问令牌时获得无效签名(在手动检查后将转移到scala代码)。 我正在使用 curl 生成访问令牌: 虽然它为我提供了访问令牌,但响应不包含“Id_token”。不知道为什么。 我正在使用 BEGIN 和 END 证书包装 https://login.microsoftonline.com/common/discovery/keys 中的公钥。(如 htt
好的,我已经花了两天的时间来解决这个错误,并找到了一个解决方案。在我的搜索中,我没有找到一个单一的答案来解决我所面临的问题(相反,我找到了多个最终指向解决方案的答案)。因此,我尝试向您解释“访问令牌验证失败。无效访问群体”错误的解决方案: TLDR: 检查“https://graph.Microsoft.com”在https://jwt.ms/上与MSAL进行身份验证时收到的访问令牌中是否作为AU
这段代码以前可以工作,但现在我在尝试验证时出现错误。这里有一个简单的例子,您可以重新创建这个问题。这是一个使用最新版本的firebase模块(3.4.1)的节点脚本。 我刚刚生成了一个启用了所有权限的新GitHub个人访问令牌。我还是会犯同样的错误。 这里有个错误: 有什么想法吗?我查看了最近的变更日志,但没有找到任何与此相关的内容。 更新 似乎已删除对个人访问令牌的支持。我已经将测试应用程序切换