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
stringrequired for every fields to be validated
matches
stringif this attribute is specified, then there must be an another field to be matched with
alias
stringIf this attribute is specified, then the
name
field must be companied for it will be translated into this aliasname
stringmust be specifed when
alias
ormatches
enabledrequired
boolean- true: when this field must be specified
- false: default
minLength
integerminimum length for a string, only valid when type is
string
ortext
maxLength
integer maximum length for a string, only valid when type isstring
ortext
locale
stringmust be locale strings, like
zh-CN
,zh-HK
,en-US
,en-GB
validate
objectthis 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