gpt4 book ai didi

javascript - require.js POST 请求 spotify web api 返回 "Error parsing json"

转载 作者:搜寻专家 更新时间:2023-10-31 23:33:06 25 4
gpt4 key购买 nike

根据 Spotify Web API Create Playlist ,一旦授权成功,带有 access_token 和一些其他参数的 POST 应该为用户创建一个新的播放列表。链接中的示例 CURL 命令

curl -X POST "https://api.spotify.com/v1/users/wizzler/playlists"  
-H "Authorization: Bearer {your access token}"
-H "Content-Type: application/json" --data "{\"name\":\"A New Playlist\", \"public\":false}"

这对我来说很好用。但是当我从 nodejs 应用程序运行以下代码时,使用 request 库,响应统计 Error parsing json

我在这里错过了什么?

更新:我尝试根据 request.js 示例将 data 更改为 form。我还尝试删除 stringify 调用,并直接传递对象。错误仍然存​​在。

var request = require('request');
var authOptions1 = {
url: 'https://api.spotify.com/v1/users/' + username + '/playlists',
data: JSON.stringify({
'name': name,
'public': false
}),
dataType:'json',
headers: {
'Authorization': 'Bearer ' + access_token,
'Content-Type': 'application/json',
}
};

console.log(authOptions1);

request.post(authOptions1, function(error, response, body) {
console.log(body);
});

最佳答案

不使用data,而是使用body:

    var request = require('request');
var authOptions1 = {
url: 'https://api.spotify.com/v1/users/' + username + '/playlists',
body: JSON.stringify({
'name': name,
'public': false
}),
dataType:'json',
headers: {
'Authorization': 'Bearer ' + access_token,
'Content-Type': 'application/json',
}
};

request.post(authOptions1, function(error, response, body) {
console.log(body);
});

应该可以。

关于javascript - require.js POST 请求 spotify web api 返回 "Error parsing json",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24589873/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com