Как правильно передать токен с внешнего сервера на конкретный маршрут API? - PullRequest
0 голосов
/ 09 февраля 2019

Прямо сейчас я так и делаю.

У меня есть вызов ajax на стороне клиента, который переходит на маршрут типа "/ gettoken"

Когда вызывается вышеуказанное, оно передаетсяна мой сервер узлов, где я выполняю router.get («/ gettoken», функция и т. д.), и внутри него я выполняю router.post («URL внешнего сервера, от которого я хочу получить токен», функция и т. д. и т. д.), затем res.json (response.token).

Затем на стороне клиента при вызове, который я сделал в 1), я получаю ответ внутри .then (функция (данные)), я использую этот токен, полученный нана стороне клиента отправить еще один вызов ajax (да, вызов ajax внутри вызова ajax).Второй вызов ajax отправляет токен другому маршруту, например, "/ sendtokenforapicall"

на стороне узла сервера, я использую router.get ("/ sendtokenforapicall"), и в этом я делаю router.post ("url"для внешнего API-маршрута ") и передайте вместе с ним токен, чтобы получить соответствующий ответ

Мой поток корректен?какой правильный или лучший способ сделать это?

1 Ответ

0 голосов
/ 09 февраля 2019

Чтобы отправлять HTTP-запросы от вашего сервера на внешний URL-адрес , вам нужно использовать что-то , отличное от вашего маршрутизатора .Ваш роутер предназначен для прослушивания входящих запросов .

Чтобы фактически выполнить HTTP-запросы от вашего сервера к URL, попробуйте использовать fetch , как это

var url = 'https://example.com/profile';
var data = {username: 'example'};

fetch(url, {
  method: 'POST', // or 'PUT'
  body: JSON.stringify(data), // data can be `string` or {object}!
  headers:{
    'Content-Type': 'application/json'
  }
}).then(res => res.json())
.then(response => console.log('Success:', JSON.stringify(response)))
.catch(error => console.error('Error:', error));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...