Skip to content

Instantly share code, notes, and snippets.

@beeva-manueldepaz
Created March 17, 2015 10:17
Show Gist options
  • Save beeva-manueldepaz/5cf201dfa17ab7b45412 to your computer and use it in GitHub Desktop.
Save beeva-manueldepaz/5cf201dfa17ab7b45412 to your computer and use it in GitHub Desktop.
Express sample to map queryParams in one route
var express = require('express')
var app = express()
app.get('/', function (req, res) {
var params = {};
if (!_.isUndefined (req.params.param1)) { params.param1 = req.params.param1; }
if (!_.isUndefined (req.params.param2)) { params.param2 = req.params.param2; }
if (!_.isUndefined (req.params.param3)) { params.param3 = req.params.param3; }
var findAll = function() { statsServices.findAll('months',req.timings, function(data) { salamandraResponse(req,res,data,true);}) };
var map = [
{ args : ['param1','param2','param3'], caller: findAll },
{ args : ['param2','param3'], caller: func1 },
{ args : ['param1'], caller: function() { statsServices.findAll('plans',req.timings, function(data) { salamandraResponse(req,res,data,true);}) } },
{ args : ['param1','param3'], caller: function() { statsServices.findAll('logic',req.timings, function(data) { salamandraResponse(req,res,data,true);}) } }
];
var cosa = _.find(map,function(line) {
return _.isEqual(_.keys(params),line.args);
});
cosa.caller();
})
var server = app.listen(3000, function () {
var host = server.address().address
var port = server.address().port
console.log('Example app listening at http://%s:%s', host, port)
})
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment