purify

Validator functions for many types of input, intended for use with express

purify

var app = express(),
    purify = require('purify');
 
app.get('/:userId', function (reqresnext) {
    var userId = purify.positiveInteger(req.param('userId')),
        force = purify.boolean(req.param('force'), true);
 
    if (userId) {
        // ... 
    } else {
        res.send(400);
    }
});
  • .email(rawValue, defaultValue)

  • .emailIdn(rawValue, defaultValue) - Returns e-mail with non-punycoded form regardless of input.

  • .domainName(rawValue, defaultValue)

  • .domainNameIdn(rawValue, defaultValue) - Returns domain in non-punycoded form regardless of input.

  • .url(rawValue, defaultValue)

  • .urlWithLocalhost(rawValue, defaultValue)

  • .integer(rawValue, defaultValue)

  • .integerInRange(rawValue, lower, upper, defaultValue)

  • .positiveInteger(rawValue, defaultValue)

  • .positiveIntegerOrZero(rawValue, defaultValue)

  • .float(rawValue, defaultValue)

  • .positiveFloat(rawValue, defaultValue)

  • .positiveFloatOrZero(rawValue, defaultValue)

  • .nonEmptyVisibleUnicode(rawValue, defaultValue)

  • .visibleUnicode(rawValue, defaultValue)

  • .nonEmptyPrintableUnicode(rawValue, defaultValue)

  • .printableUnicode(rawValue, defaultValue)

  • .nonEmptyVisibleAscii(rawValue, defaultValue)

  • .visivleAscii(rawValue, defaultValue)

  • .nonEmptyPrintableAscii(rawValue, defaultValue)

  • .printableAscii(rawValue, defaultValue)

  • .alphaNumeric(rawValue, defaultValue)

  • .nonEmptyAlphaNumeric(rawValue, defaultValue)

  • .alphaNumericWithDot(rawValue, defaultValue)

  • .uuid(rawValue, defaultValue)

  • .upperCaseUuid(rawValue, defaultValue)

  • .lowerCaseUuid(rawValue, defaultValue)

  • .json(rawValue, defaultValue)

Mostly, you can leave defaultValue empty, which will cause purify to return in case the value doesn't pass validation.