In this blog post we will see what are express routes and how to use them
Routes are basically used to decide which code should get execute when a particular URL gets opened.
So when we open/fetch different urls or different paths, based on the routes setup in express we can specify different logic to be executed.
If you come from a MVC background, routes is similar to controller. But since express doesn’t follow MVC this a very rough analogy.
You will find this code already in your “helloworld” application or the bare application generated using express-generator
var routes = require('./routes/index'); var users = require('./routes/users'); app.use('/', routes); app.use('/users', users);
In this we are using two files routes/index.js, routes/users.js and telling express to use index.js for “/” and users.js for “/users” base urls
In index.js code goes like
router.get('/', function(req, res) { res.render('index', { title: 'Express' }); });
So what this does is quite simple, for a GET request on ‘http://127.0.0.1:3000/’, we can write the code which should be executed.
Similarly, users.js will execute only for URLs which have ‘http://127.0.0.1:3000/users’ as the base path.
Similar other basic route types would be e.g in index.js we could add
//index.js router.post('/', function(req, res) { var post_body = req.body; console.log(post_body); res.render('index', { title: 'POST Request' }); });
//index.js //this will respond to http://127.0.0.1:3000/about router.get('/about', function(req, res) { res.render('index', { title: 'Express' }); });
//users.js //this will respond to http://127.0.0.1:3000/list router.get('/list', function(req, res) { res.render('index', { title: 'User List' }); });
This is a tutorial on very basic routing in express, will see more advanced routing in further tutorials.
Experiment
1. Create a new route for url http://127.0.0.1/users/account/createPassword
2. Create a new route for url http://127.0.0.1/catalog/product/view
The post Getting Start with Express 4.x – Routes Basics – Tutorial 2 appeared first on Excellence Technologies Magento Blog | Magento Tutorials | Magento Developer.