#nodejs #роутинг
В процессе освоения node.js по урокам в сети, столкнулся с таким явлением, как маршрутизация. Я её сути не понимаю, а объясняют её везде на примере фреймворка Express, что только добавляет сложности. Установил в свою заготовку приложения модуль router через npm, пошёл читать ридми, а там: Router does one thing and one thing only - route http requests. Юмор я оценил, а как разобраться, не понял. Прошу ткнуть в годный урок по роутингу без фреймворков. Чтобы не просто "как", но и "зачем". Желательно на русском, но там уж как получится. Ну, или вдруг не лень кому коротко и красноречиво описать, как вообще используется роутер. Вообще приму любую инфу по голой ноде.
Ответы
Ответ 1
Я так понимаю, речь про эту либу. Прошу ткнуть в годный урок по роутингу без фреймворков. Так эта библиотека работает без всяких фреймворков, поверх стандартного http. Ну, или вдруг не лень кому коротко и красноречиво описать, как вообще используется роутер. Вы можете и без него обойтись: const http = require('http'); const srv = http.createServer(function(req, res) { var uri = req.url; // вот тут у вас лежит теперь url, по которому пользователь обратился }); srv.listen(8080); Собственно всё, теперь вы можете обрабатывать uri как душе угодно. Если использовать роутер: route.get('/', function(req, res) { // этот метод сработает, если пользователь открыл корень сайта }); route.get('/{x}x{y}', function(req, res) { // если пользователь открыл your_site/200x200, сработает этот метод // в req.params будет {x:'200', y:'200'} }); Здесь происходит добавление правил для роутера. При поступлении запроса от пользователя роутер сверяет запрос со списком правил, который вы ему дали и вызывает необходимый колбек с вашей логикой. Роутер просто упрощает работу. Нет необходимости самим парсить запрос и т.п.
Комментариев нет:
Отправить комментарий