当前位置: 首页 > 知识库问答 >
问题:

如何修复“错误:invalid_grant无效的授权代码”,当要求从Spotify API reshresh_token?

凌经赋
2023-03-14

我正在尝试接收我的Ionic应用程序refresh_token,我成功接收access_token

我从endpoint< code > https://accounts . Spotify . com/authorize收到< code > code (< code > authorization _ code 或< code>access_token)?client_id=在我的TypeScript项目中,我将它传递给< code>cURL以测试如何获取< code>refresh_token,但我唯一收到的是它的错误。

curl -H "Content-Type: application/x-www-form-urlencoded" -H "Authorization: Basic MzBhNT...ZWIyZWQ=" -d grant_type=authorization_code -d code=BQAjgZOFne3p8PB4ARJkrXtq...kI4xJvhQ7SutZoJqVWILCY -d redirect_uri=http%3A%2F%2Flocalhost%3A8100%2Fmain -X POST https://accounts.spotify.com/api/token

预期产出:

{
   "access_token": "NgCXRK...MzYjw",
   "token_type": "Bearer",
   "scope": ...,
   "expires_in": 3600,
   "refresh_token": "NgAagA...Um_SHo"
}

但收到的错误:

{"error":"invalid_grant","error_description":"Invalid authorization code"}

共有1个答案

常自怡
2023-03-14

因此,经过两天的尝试,我发现了这个问题,并在检查文档后,我发现我错了。事情是这样的,当你想刷新令牌时,你需要在POST请求体中发送/api/tokenendpoint代码,而不是access_token。在我的情况下,我正在发送访问令牌。要接收代码,您应该向https://accounts.spotify.com/authorizeendpoint发送相同的请求,但带有参数< code>response_type=code。

 类似资料:
  • 我在StackOverflow上看到过几个关于这个的问题,但没有一个对我有帮助。我不能过去的'invalid_grant'错误时,试图做授权代码授予我的1管理员用户在DocuSignSandbox环境。 我有一个用户,他是仪表板中的DS管理员。我创建了一个新的应用程序,并获得了集成商密钥/客户端id和密钥 使用指南,https://developers.docusign.com/esign-res

  • 我正在尝试通过Google contacts API验证我的应用程序。我已经完成了Oauth2流程的第一步,并获得了一个授权代码。我正试图将此代码交换为访问令牌和刷新令牌,但当我试图从googleapis.com/oauth2/v4/token receive 响应:“invalid_grant”“错误请求”错误400。 我在很多论坛上搜索了很多小时,但没有得出一个解决我的问题的方法。 基本上,我

  • 我能够获得此访问令牌,但是,当我试图获得刷新令牌时,我得到一个错误。 在这一刻,我正在测试这个使用邮递员。 我正在做以下工作: null null null null null

  • 我正在尝试通过Linkedin Auth2从java web应用程序进行连接: null “client_id”和“client_secret”是我应用程序上的“客户端API”和“秘密API”。 第一个和第二个请求之间的时间少于20秒。

  • 提前感谢你花时间帮助我。 我试着把它放入application.properties 我制作了以下文件 文件夹结构 玩家 普拉耶尔道 FakePlayerDataAccessService 播放控制器 聚甲醛

  • 我目前正试图通过Spring Security获得JWT访问令牌。 我不确定为什么凭据不匹配 数据库ˌ资料库 我的data.sql用户从h2-in-memory DB中取出,并Hibernate到一个使用UserDetailsService的对象中: 法典 我的安全配置 我的认证服务器配置 邮差 提交带有以下内容的邮递员请求时: 授权 基本认证 用户名:jwt-example 密码:[未加密的密码