如何获取Spotify客户令牌?

时间:2019-06-14 09:42:13

标签: javascript api cors spotify fetch-api

我正在尝试访问Spotify API以获取客户端令牌,但似乎无法使其正常工作。我在任何地方都使用CORS来解决跨站出站政策,我的回应是来自cors而不是Spotify。

我最初尝试以JSON格式发送数据,因为我对如何将POST正文转换为' application / x-www-form-urlencoded '格式感到困惑,但最终找到了URLSearchParams ()。因此,现在我的提取请求是有效格式,但是我返回的数据是类型为“ cors”的对象响应,如果我使用JSON.stringify(),则该对象返回一个空对象。

我在俯视什么吗?我一直在关注the Spotify official guide


async function getAccessToken() {
  var data = new URLSearchParams();

  data.append('grant_type', 'client_credentials')
  await fetch('https://cors-anywhere.herokuapp.com/https://accounts.spotify.com/api/token', {
    method: 'POST',
    headers: { Authorization: `Basic ${base64}` },
    body: data
  })
  .then(response => console.log(`Success? ${response}`, response))
  .catch(er => console.log(`Caught an error -> ${er}`))
}

getAccessToken();

我希望响应发送给我一个带有参数的对象:access_token,token_type和expires_in。相反,我得到了输出:

{type: "cors", url: "...", redirected: false, status: 200, ok: true, …}

请按照正确的方向发送给我。

0 个答案:

没有答案