关于javascript:POST请求Spotify API的问题

Issue with POST Request To Spotify API

我正在开发一个Web应用程序,您可以在其中搜索Spotify库,将歌曲添加到播放列表,然后将该播放列表添加到您的Spotify帐户。除了通过向spotify api发送post请求来保存播放列表外,一切似乎都在工作。它给我一个"400坏请求"错误。我可能只是错过了一些小事情,有什么想法吗?请求方法:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
async savePlaylist(name, trackURIs) {
        if(accessToken === undefined) {
            this.getAccessToken();
        }
        if (name === 'New Playlist' || name === undefined || trackURIs === undefined) {
            return;
        } else {
            let userAccessToken = this.getAccessToken();
            let headers = {Authorization: `Bearer ${userAccessToken}`};
            let userId = await this.findUserId();
            let playlistID;
            fetch(`https://api.spotify.com/v1/users/${userId}/playlists`, {
                method: 'POST',
                headers: {
                    Authorization: `Bearer ${accessToken}`,
                   "Content-Type": 'application/json'
                },
                body: {
                    name: name
                }
            }).then(response => {return response.json()}
            ).then(playlist => {
                playlistID = playlist.id;
            });
        }
    },

如果您需要查看我正在处理的分行的回购协议,可以在这里找到。

编辑:可能需要API端点文档


我注意到你的代码有两件事:

Authorization: Bearer ${accessToken}

accesstoken似乎没有在该代码块的任何地方定义,而我看到的是userAccessToken

第二个也是最可能的原因是请求的主体应该是字符串(JSON字符串化),而不是对象。

这是一个很好的例子

附言:我不知道为什么有人投了反对票却没有给出理由,我讨厌这种情况发生的时候。