How can I get the spotify api token using fetch?
The spotify website has an example like this:
var client_id = 'CLIENT_ID';
var client_secret = 'CLIENT_SECRET';
var authOptions = {
url: 'https://accounts.spotify.com/api/token',
headers: {
'Authorization': 'Basic ' + (new Buffer(client_id + ':' + client_secret).toString('base64'))
},
form: {
grant_type: 'client_credentials'
},
json: true
};
request.post(authOptions, function(error, response, body) {
if (!error && response.statusCode === 200) {
var token = body.access_token;
}
});
Can that be translated into fetch? If yes, how?
Didn't test it with real credentials, but it should work:
var client_id = 'CLIENT_ID';
var client_secret = 'CLIENT_SECRET';
fetch('https://accounts.spotify.com/api/token', {
method: 'POST',
body: 'grant_type=client_credentials&client_id=' + client_id + '&client_secret=' + client_secret,
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
})
.then(r => r.json())
.then(r => {
console.log(r.access_token)
})
You could use new FormData() to make form data too instead of urlencoded.