【问题标题】:Spotify Implicit Grant Flow- Missing required parameter: client_idSpotify 隐式授权流程 - 缺少必需参数:client_id
【发布时间】:2017-09-15 06:03:48
【问题描述】:

我遇到了一个我不明白的问题! 我正在开发一个 react-native (js) 应用程序,它尝试使用隐式授权流访问 Spotify api。

这是我获取访问令牌的方法:

async function getTokenFromAPI() {
    try {
        var params = {
            client_id: '<client_id>',
            response_type: 'token',
            redirect_uri: 'http://localhost:8888/callback'
        };

        var esc = encodeURIComponent;
        var query = Object.keys(params)
            .map(k => `${esc(k)}=${esc(params[k])}`)
            .join('&');

        fetch('https://accounts.spotify.com/authorize', query).then(function (response) {
            console.log('response, ' + JSON.stringify(response));
            return response;
        })
    } catch(error) {
        console.error(error);
    }
}

但它回答说: Missing required parameter: client_id

我还使用 Postman 来检查我的请求是否正确,我得到了相同的响应...

有什么问题吗?在他们的doc 上,他们说这是一个只有 3 个参数的 GET 方法..

提前感谢您提供任何解决方法!

【问题讨论】:

    标签: javascript asp.net-web-api react-native spotify


    【解决方案1】:

    您将查询参数作为选项提供给 fetch,而不是将其添加到 url。

    改变这个

    fetch('https://accounts.spotify.com/authorize', query).then(function () { ... })
    

    到这里

    fetch(`https://accounts.spotify.com/authorize${query}`).then(function () { ... })
    

    【讨论】:

      猜你喜欢
      • 2021-11-05
      • 2017-01-15
      • 1970-01-01
      • 2017-12-09
      • 1970-01-01
      • 2020-03-16
      • 1970-01-01
      • 2019-09-12
      相关资源
      最近更新 更多