令牌请求总是导致“授权代码无效”。

时间:2014-05-09 00:15:40

标签: ruby-on-rails ruby curl oauth-2.0 beatsmusic

似乎无论我做什么,请求令牌我总是得到Authorization code is invalid.响应。我在Ruby代码和Curl中都试过这个。

curl -X POST https://partner.api.beatsmusic.com/oauth2/token -d client_secret=SECRET -d client_id=MYID -d redirect_uri=http://foo.example.com/auth/beats_oauth2 -d code=rjmsqtgntc5k6s8jhdawpu4c  

结果:

{"code":"InvalidCredentials","message":"Authorization code is invalid."}

RoR代码的结果相同。

任何建议都会很棒,因为我已经在这几天工作了!

谢谢! 加里

3 个答案:

答案 0 :(得分:0)

您的授权码是否可能已过期?我看到here它们仅在1小时内有效,然后需要刷新。这样做的说明也在那个链接上。

答案 1 :(得分:0)

docs中的示例还显示正在发送的-d grant_type=authorization_code参数。您是否尝试过包含该参数?

答案 2 :(得分:0)

问题是getToken请求上的重定向URL错误。我在Beats Music API配置中设置的回调是“/ auth / beats_oauth2 / callback”,但在我的代码和上面的示例中,我只有“/ auth / beats_oauth2”。我无法相信我看了一百万次...当然无效的访问代码错误消息让我觉得它与重定向网址无关。但这是另一个故事。