Какой код статуса HTTP нужно вернуть, если не удается сохранить данные в mongodb node.js? - PullRequest
1 голос
/ 01 июля 2019

Я изучаю бэкэнд-разработку с использованием node.js и mongodb.У Mongoose есть метод Model.save(function(err,model)), какой код статуса должен быть возвращен, если по какой-то причине документ не может быть сохранен.

В терминах кода:

Model.save(function(err,model){
if(err)
    res.status(5xx).send(err);
if(!model) {
    //executed when unable to save document IMHO correct me I am wrong
    res.status(xxx).send("Unable to save the model in database");
}
});

Ответы [ 2 ]

1 голос
/ 01 июля 2019

Вы можете использовать любой код, который представлен 4xx или 5xx. Использование 2xx или 3xx для сообщения об ошибках предотвращает обнаружение ошибок программным обеспечением, поддерживающим http. Кроме того, вы можете отправить конкретное сообщение об ошибке, используя

JSON.stringify(error, undefined, 2);

проверьте эту ссылку, где я объяснил, что делает этот метод https://stackoverflow.com/a/56773148/8284444

1 голос
/ 01 июля 2019

Что ж, это сложный вопрос, но я должен сказать вам, что 422 - недопустимое состояние.

Я предполагаю, что вы пытаетесь сказать, что произошла ошибка, это может быть проблема с сетью,служба не готова (отключена, не отвечает) или аналогичная.Нет кода 4xx, который бы представлял, что если вы хотите использовать любой 4xx, он может не соответствовать истине.

Обычный ответ - 503, потому что он недоступен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...