Как отправить POST-запрос на авторизацию Spotify - PullRequest
0 голосов
/ 18 января 2019

Я пытаюсь отправить POST-запрос в Spotify, чтобы получить токен, я могу успешно получить токен с помощью команды "curl", но я думаю, что допустил ошибку при написании кода

Я использую сервер Node.js.

const express = require('express');
const request = require('request'); 
const app = express();
const port = 3000;
app.get('/',(req,res) => {
    let options = {
        url: 'https://accounts.spotify.com/api/token',
        jason: true,
        form: {
            client_id:'17...97',
            client_secret:'24...29',
            grant_type:'authorization_code',
            code:'AQA...et8',
            redirect_uri:'https%3A%2F%2Fexample.com%2Fcallback'
        }         
    }
    request.post(options, (req, response,error) =>{
        if (error){
            console.log(error);
        }
        res.send(response);   
    })
})

app.listen(port, () => {
    console.log("Example app listening port 3000");
})

Предыдущий код всегда возвращает Error Invalid redirect URI, но когда я использую приведенный ниже код в командной строке, я успешно получаю токен или получаю ошибку: expired code, что не является проблемой, поскольку я повторно использую код.

curl -d client_id=17...97 -d client_secret=24...29 -d grant_type=authorization_code -d code=AQA...et8 -d redirect_uri=https%3A%2F%2Fexample.com%2Fcallback https://accounts.spotify.com/api/token

Оба они имеют одинаковый клиент, код и redirect_uri, поэтому я не уверен, почему у меня два разных результата.

...