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
Was this helpful?