#node.js #npm #gotjs
#node.js #нпм #node.js-есть #npm #node.js-получил
Вопрос:
Недавно я узнал, что request
это больше не поддерживается, поэтому лучшая альтернатива, которую я нашел, это got
. Я пытаюсь выполнить внешний вызов API на сервер REST, но я не уверен относительно того, как я могу добавить токен-носитель в заголовок авторизации запроса POST.
Это мой код:
const response = await got.post(
"https://${SERVER}/${SOME_ID}/conversations/${CONVERSATION_ID}/messages",
{
json: [
{
text: req.body.message,
type: "SystemMessage",
}
],
responseType: "json",
headers: {
token: "Bearer pXw4BpO95OOsZiDQS7mQvOjs"
}
}
);
Это приводит к 401 Unauthorized
. Я не смог найти направление к такой реализации в документации, предоставленной GOT. И поскольку запросов относительно этого пакета не так много, мне также не удалось найти что-либо в Google. Если кто-нибудь может помочь мне в этом отношении, это было бы очень полезно!
Комментарии:
1. Вы можете использовать, что они разветвляют пакет запроса, и он поддерживается командой postman, обладающей всеми функциями пакета запроса
Ответ №1:
Вы уверены, что имя заголовка — «токен»? Обычно в API предъявитель находится в заголовке под названием «Авторизация»
const response = await got.post(
"https://${SERVER}/${SOME_ID}/conversations/${CONVERSATION_ID}/messages",
{
json: [
{
text: req.body.message,
type: "SystemMessage",
}
],
responseType: "json",
headers: {
"Authorization": "Bearer pXw4BpO95OOsZiDQS7mQvOjs"
}
}
);
Ответ №2:
Вот этот код
npm i postman-request
ссылка для пакета npm
const request = require('postman-request');
request({
url: 'your url',
headers: {
'Authorization': 'Bearer 71D50F9987529'
},
rejectUnauthorized: false
}, function(err, res) {
if(err) {
console.error(err);
} else {
console.log(res.body);
}
});
Комментарии:
1. Спасибо за ответ, но мне было больше интересно узнать, как я мог бы достичь этой функциональности, все еще используя got
2. Я дал вам этот способ, потому что вы упомянули, что пакет запроса устарел, но команда postman поддерживает ту же функциональность, даже улучшенную, в своем пакете postman-request npm
3. Спасибо за это. got настолько плохо документирован, что я удивлен, что кто-то действительно его использует.