Почему в моем ответе на запрос POST нет данных? - PullRequest
0 голосов
/ 09 апреля 2019

Я делаю почтовый запрос к маршруту, который я настроил с помощью экспресс:

todolists.post('/getTodoLists', (req, res) => {
  TodoList.findOne({
    userEmail: req.body.userEmail
  })
    .then(todolist => {
      if (!todolist) {
        res.status(404).send()
      } else {
        res.status(200).json(todolist)
      }
    })
    .catch(err => {
      console.log(err)
      res.status(500).send(err)
    })
})

Когда я использую следующий код для извлечения данных из базы данных, все, что я получаю в своей консоли, это 'объект'Объект '

axios
  .post('todo-lists/getTodoLists', {
      userEmail: this.userEmail
   })
     .then(res => {
        console.log('response from gettodoLists' + res)
        this.todolist = res
        console.log(this.todolist)
      })
      .catch(err => {
        console.log(err)
      })

Когда я использую Postman для отправки запроса на тот же маршрут с теми же данными запроса, я получаю все данные, которые я ожидаю получить.

Заранее спасибо!

РЕДАКТИРОВАТЬ:

Это то, что я получаю от почтальона

{
    "_id": "5caca1498accb128c8974d56",
    "title": "todolist1",
    "userEmail": "test@gmail.com",
    "todos": [
        {
            "_id": "5caca1498accb128c8974d57",
            "description": "Get this done",
            "completed": true
        }
    ],
    "dateDue": "2019-04-07T18:24:31.207Z",
    "__v": 0
}

Это то, что я получаю в своей консоли, когда я консоль журнала ответа

response from gettodoLists[object Object]

1 Ответ

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

Вы должны получить данные из объекта ответа, чтобы получить тело, видимое в Почтальоне.

axios.post('todo-lists/getTodoLists', {
      userEmail: this.userEmail
   })
     .then(res => {
        console.log(res.data)
      })
      .catch(err => {
        console.log(err)
      })

Ответ - это полный ответ, содержащий заголовки и т. Д.

...