使用Spotify获取来自Spotify的授权访问错误

我试图使用Spotify包装器来使用我的应用程序,我设法击中Spotify的帐户服务,并且该页面授权应用程序使用用户察看帐户信息,但我得到一个内部500服务器错误:

index.js:6 POST https://accounts.spotify.com/en/authorize/accept 500 (Internal Server Error)

// Set up Spotify API wrapper
const scopes = ['user-read-private', 'user-read-email'];
const STATE_KEY = 'spotify_auth_state';

app.get('/login', (req, res) => {
  const state = generateRandomString(16);
  res.cookie(STATE_KEY, state);
  res.redirect(spotifyApi.createAuthorizeURL(scopes, state));
});

app.get('/callback', (req, res) => {
  const { code, state } = req.query;
  const storedState = req.cookies ? req.cookies[STATE_KEY] : null;

  if (state === null || state !== storedState) {
    res.redirect('/#/error/state mismatch');
  } else {
    res.clearCookie(STATE_KEY);

    spotifyApi
      .authorizationCodeGrant(code)
      .then(data => {
        const { expires_in, access_token, refresh_token } = data.body;

        // Set the access token on the API object to use it in later calls
        spotifyApi.setAccessToken(access_token);
        spotifyApi.setRefreshToken(refresh_token);

        spotifyApi.getMe().then(({ body }) => {
          console.log(body);
        });

        res.redirect('/search');
      })
      .catch(err => {
        res.redirect('/#/error/invalid token');
      });
  }
});

这是我在该页面上的端点:

https://accounts.spotify.com/en/authorize?client_id=CLIENT_ID&response_type=code&redirect_uri=http:%2F%2Flocalhost:8888%2Fcallback%2F&scope=user-read-private%20user-read-email&state=k4ogwe4h53i00000

不完全确定发生了什么事。 我认为这最初是一种状态不匹配,但生成的状态很好。 无法准确指出错误的位置。 任何人有任何建议?


您需要在开发人员信息中心中设置重定向URI,确保它与您在应用中使用的完全一样。

我们意识到对无效的重定向URI错误进行错误处理的可能性很小,并且正在修复。

链接地址: http://www.djcxy.com/p/55681.html

上一篇: Getting authorized access error from Spotify with spotify

下一篇: Using node