Router

ROUTER это хранилище роутов, событий (WebSockets), схем (GraphQL), а также middlewares. Вы можете добавить список роутов в вашем конфиге модуля таким образом:

"routes": {
    "users_get": { "path": "users", "method": "get" },
}

где

  • users_getимя роута что будет использовано для ACTIONS события

  • "path": "users"это url по которому запрос придет с клиента на API.

  • "method": "get"это API метод запроса (get, post, put, delete).

Для добавления роутов модуля в глобальный Router вам нужно достать ключ "routes" с конфига модуля в "index.js" файл.

const { routes } = require('./config.json');

ROUTER.set('routes', routes);

Также вам нужно конвертировать ключ конфига в вид события (с точкой вместо нижнего подчеркивания) для использования в ACTIONS.

const { users_get } = utils.convertkeysToDots(routes); // now users_get is a string 'users.get'

ACTIONS.on(users_get, () => {});

Как вы видите - ROUTER имеет метод set который добавляет роуты с конфига модуля в глобальный ROUTER. Если вы хотите просмотреть список назначеных роутов - вы можете вызвать метод get:

ROUTER.get('routes');

Также назначения работают не только для роутов, а и для socket событий, схем и middlewares.

Last updated