Express — это минимальная и гибкая платформа веб-приложений Node.js, которая предоставляет надежный набор функций для веб-приложений и мобильных приложений. Структура определений экспресс-маршрутов с промежуточным программным обеспечением, обработчики становятся очень
негибкими и загроможденными.

Я уже некоторое время использую Express.js; Мне было интересно, как лучше всего написать модульную и масштабируемую структуру маршрутов, чтобы она оставалась организованной по мере роста кодовой базы.

Что, если я скажу вам, что вы можете определить маршруты, которые будут модульными и согласованными? что-то вроде приведенного ниже фрагмента:

const middleware = require('../middlewares')
const controller = require('../controllers')

const paths = [
    {
        'path' : '/users/:id',
        'method' : 'get',
        'middlewares' : [middleware.checkAuth],
        'handlers' : controller.getUserInfo
    },
    {
        'path' : '/users/info',
        'method' : 'post',
        'middlewares' : [middleware.checkAuth, middleware.checkData],
        'handlers' : controller.processUserInfo
    }
]


module.exports = paths;

Да, это легко сделать с помощью express-clean-routes npm.

путь —может принимать динамические или статические маршруты. Динамические маршруты могут принимать стандартные параметры экспресс-маршрута (например, /:your_parameter_name/. Захваченные значения хранятся в объекте req.params с использованием имен параметров как ключи (например, req.params.your_parameter_name).

метод —может принимать популярные методы HTTP, такие как GET, POST, PUT и DELETE.

промежуточное ПО — принимает массив стандартных функций экспресс-промежуточного ПО, но может быть пустым массивом.

handlers — принимает стандартную функцию обработки функций.

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

Настройка маршрутов

установка файла index.js в каталог маршрутов

настройка файла users.js в каталоге маршрутов

установка файла healthcheck.js в каталог маршрутов

Пример настройки экспресс-очистки маршрутов можно найти здесь.

Спасибо за чтение. Расскажите в комментариях, что вы думаете о такой организации маршрутов.

Если вы нашли эту статью полезной, оставьте немного👏 💯