Как получить res.send (req.body) при отправке обратно в функцию - PullRequest
0 голосов
/ 17 декабря 2018

Я пытаюсь отправить req.body по маршруту запроса POST обратно в функцию, выполняющую запрос POST.

req.body выглядит так { username: 'aa', password: 'ss' }

яиспользуя функцию для публикации и после публикации хочу работать с ответом.

Используя res.sendStatus (200) или res.sendStatus (401), я могу получить к нему доступ вот так

post('/login', { username, password })
    .then(({ status }) => {
      if (status === 200) {alert('login success'); window.location.href = "/about"}
      else alert('login failed')
    })

Как я могу получить доступ к имени пользователя с помощью then() при ответе res.send(req.body) или res.json(req.body)

Я попытался .then(({ username }) => {alert(username)}) и получить неопределенную ошибку

Ответы [ 2 ]

0 голосов
/ 17 декабря 2018

Сначала убедитесь, что вы можете получить username.

post('/login', { username, password })
.then(response => {
    responseJSON = JSON.parse(response);
    console.log(responseJSON);
});
0 голосов
/ 17 декабря 2018

Если вы используете fetch api, у вас будет ответ json при вызове json() для объекта ответа.

post('/login', { username, password })
  .then(({ status, json }) => {
    const responseJSON = json();
    const { username } = responseJSON; // all your data will be in this object
    if (status === 200) {alert('login success'); window.location.href = "/about"}
    else alert('login failed')
})

Если вы используете axios, у вас будетВаш ответ JSON в data объект.

post('/login', { username, password })
  .then(({ status, data }) => {
    const responseJSON = data;
    const { username } = responseJSON; // all your data will be in this object
    if (status === 200) {alert('login success'); window.location.href = "/about"}
    else alert('login failed')
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...