javascript - 如何使用 JavaScript 发布到 Spotify API 令牌端点?
问题描述
我正在运行以下 js 代码。但我不断收到来自 Spotify 网页的错误(说有某种错误)。 credentials是一个 base64 编码的 client_id 和 secret 字符串。
curl 命令工作得很好:
curl -X "POST" -H "Authorization: Basic *credentials*" -d grant_type=client_credentials https://accounts.spotify.com/api/token
js代码不能正常工作..
我想这很容易,但我在 js 方面不是很好(对不起!)。
fetch('https://accounts.spotify.com/api/token', {
method: 'POST',
headers: {'Authorization': 'Basic *credentials*'},
body: 'grant_type=client_credentials'
})
.then(response => response.json())
.then(data => {
console.log(data);
});
解决方案
正如Spotify 授权指南中所指定的那样,主体必须是application/x-www-form-urlencoded
这样,所以只需添加这个标题:
fetch('https://accounts.spotify.com/api/token', {
method: 'POST',
headers: {
'Authorization': 'Basic *credentials*',
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
},
body: 'grant_type=client_credentials'
})
.then(response => response.json())
.then(data => {
console.log(data);
});
推荐阅读
- oracle - 在where子句中用or/nvl合并数据,有什么好处?
- reactjs - 如何将数据发送到具有多个嵌套数组的 api 反应
- sql - 如何将特定行选择到新表中?
- c# - Powershell vs C# EscapeUriString 不同的结果
- javascript - JQuery缓慢的图像变化
- javascript - Angular - 在组件之间共享图像
- javascript - 程序需要在点击时查找在父框中输入的所有父编号的后继者的计数
- ios - CKUserIdentity userRecordID 属性是可选的。为什么?
- javascript - Greasemonkey 禁用脚本
- sql - 获取选择查询可以返回的行数