首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >领英OAuth2授权代码错误

领英OAuth2授权代码错误
EN

Stack Overflow用户
提问于 2015-04-22 17:10:58
回答 3查看 8.6K关注 0票数 3

我正在尝试通过Linkedin Auth2从java web应用程序连接:

  1. 在linkedin中添加了我自己的应用程序。
  2. 生成授权URL:uri=http://localhost:9090/springmvc/token.htm
  3. 在新的弹出窗口中为linkedin介绍我的登录/密码。
  4. 返回到redirect_uri previus上的请求成功,并接受授权代码“代码”
  5. 生成accessToken URL
  6. 用:secret=ZZZ发布一篇文章
  7. 获取响应中的下一个错误:{“error_description”:“缺少必需的参数,包括一个无效的参数值,参数不止一次。:无法检索访问令牌: appId或重定向uri不匹配授权代码或授权代码过期”,“错误”:“invalid_request”}

我已经验证了url参数是正确的:- "code“是步骤4中接收的令牌。

  • "redirect_uri“是步骤2和4中相同的URL。我在我的应用程序"OAuth 2.0重定向URL”部分添加了这个URL。
  • "client_id“和"client_secret”是我的应用程序中的“客户端API”和“秘密API”。
  • 第一次请求与第二次请求之间的时间少于20秒。
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-07-09 06:07:00

redirect_uri参数的值必须是URL编码的,因此在6. do:

代码语言:javascript
复制
 https://www.linkedin.com/uas/oauth2/accessToken?grant_type=authorization_code&code=YYY&redirect_uri=http%3A%2F%2Flocalhost%3A9090%2FSpringMVC%2Ftoken.htm&client_id=XXX&client_secret=ZZZ

它不需要作为一个职位,而是作为一个GET。

票数 4
EN

Stack Overflow用户

发布于 2018-03-28 12:41:09

如果要发送访问令牌请求,则必须是POST请求。

请参阅OAuth文档

实际上,我将整个URL从Eclipse控制台复制到URL,它仍然有效

在您的例子中,问题在于如HanZ所说的URL编码。您必须为Post请求编码您的URL。

票数 1
EN

Stack Overflow用户

发布于 2015-07-15 05:31:04

我也被这个问题困扰了很长一段时间。请记住一些我做过的事情,并最终解决掉。

  1. 通过使用get请求,点击api获取授权代码。
  2. 授权代码的生命周期约为20秒,因此很难从url手动复制代码并请求令牌访问。你应该以语法的方式来做。
  3. 发出获取访问令牌的post请求。
  4. 最重要的是:我创建的旧linkedin应用程序不起作用,造成了上述错误。创建一个新的linkedin应用程序并尝试。这样做对我很有帮助。

我假设所有其他参数,如client_id、secret、redirect_uri都是正确的。

请试着让我们知道。

谢谢。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29804501

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档