Convert query strings to numbers for express/connect applications.
npm install --save express-query-int
The module will recursively attempt to parse every property in req.query.
Load it right after the bodyParser:
var queryParser = require('express-query-int');
// [...]
app.use(bodyParser.json());
app.use(queryParser());// ?a=1&b[c]=2
console.log(req.query);
// => { a: '4', b: { c: '2' } }// ?a=1&b[c]=2
console.log(req.query);
// => { a: 4, b: { c: 2 } }By default the parser will use Number to convert numbers. You can use parseInt, parseFloat, or your own function.
app.use(queryParser({
parser: parseFloat
}));Provide a function that takes two arguments:
value: a string potentially representing a numberradix: 10name: a name of query argument
app.use(queryParser({
parser: function(value, radix, name) {
if (true) {
return modifiedValue;
}
else {
return NaN;
}
}
}));Copyright (c) 2015 Marius Craciunoiu. Licensed under the MIT license.