node-form-validator
v1.5.2
Published
validator for objects, json, forms
Downloads
72
Maintainers
Readme
node-form-validator
Validator for javascript types
Installation
$ npm install --save node-form-validator
Configurations
Format
A configuration is an object with fieldNames and attributes describing the corresponding fieldName.
The following is a very simple example for node-form-valiator configuration
var conf = {
fieldName: {
type: 'string'
required: true,
minLength: 1,
maxLength: 100
}
}
Attributes
There a currently 8 attributes available.
type string
required for every fields to be validated
matches string
if this attribute is specified, then there must be an another field to be matched with
alias string
If this attribute is specified, then the name field must be companied for it will be translated into this alias
name string
must be specifed when alias or matches enabled
required boolean
- true: when this field must be specified
- false: default
minLength integer
minimum length for a string, only valid when type is string or text
maxLength integer maximum length for a string, only valid when type is string or text
locale string
must be locale strings, like zh-CN, zh-HK, en-US, en-GB
validate object
this means you have children to validate, only with type object
Supported types
'email'
'url'
'fqdn'
'ip'
'alpha'
'numeric'
'alphanumeric'
'base64'
'hexadecimal'
'hexcolor'
'int'
'float'
'uuid'
'date'
'json'
'creditcard'
'isbn'
'phone'
'ascii'
'multibyte'
'time'
'string', //no more than 256 chars
'text', //no more than 65536 chars,
'object' //have children
Usage
Define configuration
//Validate
var conf = {
password: {
type: 'string',
minLength: 3,
maxLength: 64,
required: true
},
children: {
type: 'object', //children enabled
validate: {
child1: {
type: 'string'
},
child2: {
type: 'phone'
},
child3: {
type: 'object', //children enabled
validate: {
...
}
}
}
}
};
var dataToBeExtracted = {
password: 'sfdo@sdfosfod',
children: {
child1: 'hell',
child2: '13923213239',
child3: {}
}
};
Validation
var validator = require('node-form-validator');
var error = {};
Validate http requests
function(req, res) {
//Errors reported
var error = {};
var data = {};
if (validator.v(req, conf, data, error)) {
// Do something for validation passed
} else {
// Do something for validation failed
}
}
Validate json objects
var json = {}
//Errors reported
var error = {};
if (validator.validate(json, conf, error)) {
// Do something for validation passed
} else {
// Do something for validation failed
}
Extraction from json
var extractedData = validator.json.extract(json, conf));
License
MIT © calidion