Это в некоторой степени продолжение предыдущего вопроса .
Я получил простой Node.js с Express для связи с моим проектом Vue (не имеет значения) и с помощью Axios для вызова стороннего REST API (на этот раз Uber). И Vue, и Nodejs находятся на локальном хосте (порт 8080 и 8081 соответственно).
- Я могу получить код авторизации для получения токена.
- К сожалению, я не могу получить указанный токен от Аксиоса (работает на Почтальоне).
Я получаю ошибку 400 Bad Request с сообщением invalid_request
без более ясного способа выяснить, что может быть недействительным.
Вот что у меня есть:
Из Node.js
const router = express.Router();
router.route('/token')
.post((req, res) => {
let queryCode = req.body.queryCode;
axios.post('/oauth/v2/token', {
client_secret: process.env.UBER_CLIENT_SECRET,
client_id: process.env.UBER_CLIENT_ID,
grant_type: 'authorization_code',
redirect_uri: <redirect_url_here>,
code: queryCode
},{
baseURL: 'https://login.uber.com',
headers: {
'Content-Type': 'application/json'
}
}).then((response) => {
return res.json(response).sendStatus(201);
}).catch((error) => {
return res.send({
data: error.response.data.error,
statusText: error.response.statusText,
status: error.response.status
});
});
});
Ответ
{
"data": "invalid_request",
"statusText": "Bad Request",
"status": 400
}