当且仅当用户在发出OAuth2请求时登录LinkedIn时,它才有效.
如果用户未登录,则会遇到错误.
我们行动的顺序:
https://api.linkedin.com/v1/people/\~在此之后,我们收到401以下内容:
{
"errorCode": 0,
"message": "Unable to verify access token",
"requestId": "C0DUCX81SA",
"status": 401,
"timestamp": 1421946470523
}
Run Code Online (Sandbox Code Playgroud)
有时,经过一段时间后,使用相同的访问令牌重试会产生200.有时不会.
如果用户在此"401周期"期间登录到LinkedIn,则神奇地以前获取的访问令牌开始工作.
我不知道如何解决这个问题,因为它似乎是LinkedIn的一个问题.
有人有任何建议或者之前有人看过这种行为吗?
我们尝试过cookie设置,在请求之前等待一段时间.
我们正在向Zotonic [1]添加LinkedIn OAuth2身份验证,但现在仍然使用非工作模块.
编辑:
有人提到LinkedIn的两个讨论.他的答复现在遗憾地从下面的讨论中消失了.
这些是链接:
https://developer.linkedin.com/forum/unable-verify-access-token
我在这些讨论中尝试了所有建议,但无济于事.
编辑#2:
检查LinkedIn上的第一个讨论表明我并不是唯一一个遇到这些一致性问题的人.如果用户已经清除了cookie或者在OAuth"舞蹈"期间必须登录LinkedIn,那么在LinkedIn上会出现问题 https://developer.linkedin.com/forum/unable-verify-access-token#comment-36950
更新
解决了,感谢Matthijs Bierman,请看下面的答案.