【问题标题】:Axios GET request to Spotify API returning 401Axios GET 请求 Spotify API 返回 401
【发布时间】:2021-08-08 23:30:22
【问题描述】:

我使用了spotify web api reference 中提供的格式和直接从那里生成的访问令牌,但我不断收到 401 错误。怎么回事?

    const accessToken = 'string from https://developer.spotify.com/console/get-current-user-playlists/?limit=50&offset=0';
    console.log(accessToken);
    axios
        .get(
            'https://api.spotify.com/v1/me/playlists',
            { params: { limit: 50, offset: 0 } },
            {
                headers: {
                    Accept: 'application/json',
                    Authorization: 'Bearer ' + accessToken,
                    'Content-Type': 'application/json',
                },
            }
        )
        .then((data) => console.log(data))
        .catch((err) => console.log(err));

错误:

GET https://api.spotify.com/v1/me/playlists?limit=50&offset=0 401

【问题讨论】:

  • 他们给您的curl 示例是否也返回401?如果是这样,您在创建令牌时是否为此请求选择了一个强制范围?
  • 不,该示例运行良好,是的,我在获取令牌之前检查了范围“播放列表读取私有”范围。我添加了错误以供参考

标签: reactjs axios spotify


【解决方案1】:

想通了。发布请求在第二个参数中有一个正文,在第三个参数中有一个标题。但是,获取请求只有 URL 参数和标头的第二个参数。所以我只需要将 2 个对象合二为一

【讨论】:

    【解决方案2】:

    想通了。 Post 请求在第二个参数中有一个正文,在第三个参数中有一个标头。但是,获取请求只有 URL 参数和标头的第二个参数。所以我只需要将 2 个对象合二为一:

    axios
        .get(
            'https://api.spotify.com/v1/me/playlists', {
                params: { limit: 50, offset: 0 },
                headers: {
                    Accept: 'application/json',
                    Authorization: 'Bearer ' + newAccessToken,
                    'Content-Type': 'application/json',
                },
            })
        )
    

    【讨论】:

      猜你喜欢
      • 2017-06-18
      • 2018-04-28
      • 1970-01-01
      • 2021-02-03
      • 2021-09-11
      • 2022-01-05
      • 1970-01-01
      • 1970-01-01
      • 2019-05-31
      相关资源
      最近更新 更多