SyntaxError: «JSON.parse: неожиданный символ в строке 1 столбца 1 данных JSON» - PullRequest
0 голосов
/ 03 мая 2019

При отправке запроса HTTP DELETE из моего внешнего интерфейса Angular на мой внутренний узел выдается следующая ошибка:

Syntax Error

Однакозапрос DELETE все еще обрабатывается и объект удаляется.

Вот моя функция удаления в Angular:

  deleteProject(id: number) {
     this.http.delete(`projects/${id}`).subscribe(
      response => {
        this.toastr.success('Project deleted.', 'Success');
      },
      err => {
        console.log(err);
      }
    );
  }

И в моем внутреннем API:

function remove(req, res) {

  let query = {
    _id : req.params.id
  };

  Projeto.findById(query)
  .then(async (projeto) =>  {

    if(!projeto) {
      return res.status(404).json({error: 'not_found', message: 'This project doesn\'t exist.'});
    }

    if(projeto.project_manager.toString() != req.user._id.toString()) {
      return res.status(403).json({error: 'forbidden', message: 'You can\'t delete this project.'});
    } else {
      await Projeto.findByIdAndRemove(query);
    }


    res.status(200).send("Project deleted.");


  })
  .catch(utils.handleError(req, res));
}

К чему относится эта ошибка и как ее исправить?

1 Ответ

0 голосов
/ 03 мая 2019

Ответ, который вы показываете, преобразует его в JSON и затем пытается. Поскольку ваш ответ не в формате JSON, вы получаете эту ошибку.

...