How to configure dynamic routes with express.js

wasiim_dev

I have a route.js which looks like this:

module.exports = function(app) {

  app.get('/tip', function(req, res) {
    res.render("tip");
  });

  app.get('/article', function(req, res) {
   res.render("article");
  });

  app.get('/article1', function(req, res) {
   res.render("article1");
  });

  app.get('/article2', function(req, res) {
   res.render("article2");
  });

  app.get('/article3', function(req, res) {
   res.render("article3");
  });

  app.get('/modules/:name', function(req, res) {
    var name = req.params.name;
    res.render('modules/' + name);
  });

  app.get('/modules/esaver/:name', function(req, res) {
    var name = req.params.name;
    res.render('modules/esaver/' + name);
  });

};

Considering i have over 200 different routes to create, i would end up with stuff like 'article1', 'article2' etc

and my app.js is like:

var express = require('express')
  ,http = require('http')
  ,fs = require('fs')
  ,path = require('path');

var app = express();

html_templates = __dirname + '/html_templates';

app.set('views', html_templates + '/views');
app.set('view engine', 'jade');

app.use('/Core', express.static(__dirname + '/Core'));


app.listen(3000, function () {
 console.log("express has started on port 3000");
});

require('./html_templates/controller/routes.js')(app);

Is there any dynamic way to create this?

wasiim_dev

Finally got it working..

In cases where I got, article1, article2 etc:

app.get('/:name(article|article2|article3)?', function(req, res) {
    var name = req.params.name;
    res.render(name);
});

In cases where I got multi level url, I created a custom function:

function geturl(url) {

  app.get('/' + url + '/' + ':name', function(req, res){
    var name = req.params.name;
    res.render(url + '/' + name);
  });

};

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Dev

Express.js dynamic routes

From Dev

Dynamic routes with Express.js -- is this even possible?

From Dev

How to protect routes in express.js?

From Dev

express js routes how to get the root

From Dev

express js routes how to get the root

From Dev

Routes in express JS

From Dev

Express JS Routes

From Dev

express js 4 - How to configure without app.configure?

From Dev

express js 4 - How to configure without app.configure?

From Dev

How to separate routes on Node.js and Express 4?

From Dev

How to test Express.js routes with Jasmine 2.3 and SuperTest

From Dev

Express.js - How to Modify app.locals variables in routes

From Dev

How do I handle Express.js routes?

From Dev

Node.js & Express: Static assets on dynamic routes aren't found

From Dev

Express js routes - overlapping params

From Dev

Express.js routes with Typescript

From Dev

Consolidating Routes in Express.js

From Dev

How to Avoid Repeating Passport.JS Code Used in Multiple Express.JS Routes

From Dev

Express.js - Single routes file that manages all the routes

From Dev

HTTPS express.js server and routes

From Dev

Move routes into files in Express.js

From Dev

Node.js express nested routes

From Dev

Express js routes not working as expected with MEAN stack

From Dev

Express JS - Use of anonymous functions for routes and middleware

From Dev

Express js routes url to correct page

From Dev

Node.js express nested routes

From Dev

Node.js + express: specify routes

From Dev

Using Express Router in routes.js

From Dev

Move routes into files in Express.js