Обработка исключений в Express JS - PullRequest
0 голосов
/ 16 ноября 2018

Я разрабатываю API для отдыха, используя Express JS.Я хочу показать несколько ошибок, таких как маршрут не найден, данные не найдены, ошибка проверки.Я использую асинхронную структуру ожидания.Мне нужно знать, как управлять обработкой нескольких исключений в Express JS.Я ищу на сайте, но не нашел точного пути.Везде пишут, чтобы использовать исключение по умолчанию для nodeJS.Но мне нужно настроить его в REST API.

Мне нужна помощь опытного разработчика nodejs.Если кто-то знает лучший ресурс экспресс-обработки ошибок, пожалуйста, дайте мне ссылку, чтобы узнать это

Ответы [ 2 ]

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

Вы можете регистрировать ошибки, используя промежуточное ПО. Как показано ниже, в качестве примера промежуточного программного обеспечения мы можем отследить ошибки, возникающие во всем приложении.Кроме того, мы можем поймать отклонения обещания

const express = require("express");

const app = express();

app.use((err, req, res, next) => {
    if (err) {
        res.status(err.statusCode || 500).send(err);
        console.error(err.stack);
        next();
    }

    console.error(`Message :: ${err.message}
                   Url :: ${req.originalUrl}
                   Method :: ${req.method}
                   Ip :: ${req.ip}
                   Time :: ${(new Date()).toLocaleTimeString()}`);
});

Для справки используйте эту ссылку. Нажмите здесь

0 голосов
/ 16 ноября 2018

1. Для обработки ошибки маршрута не найден, вы можете использовать маршрут по умолчанию

app.all('/*', (req, res)=> res.status(404).send('Route Not Found'))

2. Для обработки ответа вы можете установить некоторый предопределенный ответ в отдельном модуле и отправить все ответы от этого модуля.Например,

    //response.js file
    module.exports= {
       ok : (res, data)=> res.status(200).send({data}),
       error: (res, err)=> res.status(err.status).send({error})
    }

3. Для обработки ошибок вы можете создать отдельный файл ошибок, в котором все ошибки установлены, и создать свою ошибку по перечисленным ошибкам.И вы можете попробовать, поймать

4.Для проверки вы можете использовать промежуточное программное обеспечение и / или помощник для обработки проверки.

5. Ниже приведены некоторые ссылки на конфигурацию node.js, созданные мной,Вы можете взять ссылку оттуда

https://github.com/bapinmalakar/election-exitpoll-back (very simple, Github)
https://github.com/bapinmalakar/pt-backend (little complex, github)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...