rv

restify-validator

A restify middleware for node-validator.

Showing:

Popularity

Downloads/wk

39

GitHub Stars

26

Maintenance

Last Commit

2yrs ago

Contributors

14

Package

Dependencies

1

Size (min+gzip)

6.2KB

License

Type Definitions

Tree-Shakeable

No?

Categories

Readme

restify-validator

A restify.js middleware for node-validator.

This is basically a copy of a gist by node-validator author chriso.

Installation

npm install restify-validator

Usage

var util = require('util'),
    restify = require('restify'),
    restifyValidator = require('restify-validator'),
    app = restify.createServer();

app.use(restify.bodyParser());
app.use(restify.queryParser());
app.use(restifyValidator);

app.post('/:urlparam', function(req, res) {

  req.assert('postparam', 'Invalid postparam').notEmpty().isInt();
  req.assert('getparam', 'Invalid getparam').isInt();
  req.assert('urlparam', 'Invalid urlparam').isAlpha();

  req.sanitize('postparam').toBoolean();

  var errors = req.validationErrors();
  if (errors) {
    res.send(500 ,'There have been validation errors: ' + util.inspect(errors));
    return;
  }
  res.json({
    urlparam: req.params['urlparam'],
    getparam: req.params['getparam'],
    postparam: req.params['postparam']
  });
});

app.listen(8888);

Which will result in:

$ curl -d 'postparam=1' http://localhost:8888/test?getparam=1
{"urlparam":"test","getparam":"1","postparam":true}

$ curl -d 'postparam=1' http://localhost:8888/t1est?getparam=1
There have been validation errors: [
  { param: 'urlparam', msg: 'Invalid urlparam', value: 't1est' } ]

$ curl -d 'postparam=1' http://localhost:8888/t1est?getparam=1ab
There have been validation errors: [
  { param: 'getparam', msg: 'Invalid getparam', value: '1ab' },
  { param: 'urlparam', msg: 'Invalid urlparam', value: 't1est' } ]

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100
No reviews found
Be the first to rate

Alternatives

No alternatives found

Tutorials

No tutorials found
Add a tutorial