天天看點

nodejs的後端字元串驗證器-validator-- 安裝子產品-- 驗證介紹-- 方法介紹

送出表單的時候,前端驗證都可以繞過,這個時候就需要後端驗證了,本文就是介紹的nodejs後端的驗證子產品,validator

-- 安裝子產品

npm install validator

引入 var validator = require('validator');

-- 驗證介紹

contains(str, seed) : 是否包含字元串

equals(str, comparison) : 檢查字元串是否比對

isAfter(str [, date])  : 檢查字元串是否在指定的日期之後,預設是目前日期

isBefore(str [, date])  和 isAfter類似

isAlpha(str [, locale])  : 檢查字元串是否隻包含(a-zA-Z).語言環境是其中之一

['ar', 'ar-AE', 'ar-BH', 'ar-DZ', 'ar-EG', 'ar-IQ', 'ar-JO', 'ar-KW', 

'ar-LB', 'ar-LY', 'ar-MA', 'ar-QA', 'ar-QM', 'ar-SA', 'ar-SD', 'ar-SY', 

'ar-TN', 'ar-YE', 'cs-CZ', 'de-DE', 'en-AU', 'en-GB', 'en-HK', 'en-IN', 

'en-NZ', 'en-US', 'en-ZA', 'en-ZM', 'es-ES', 'fr-FR', 'hu-HU', 'nl-NL', 

'pl-PL', 'pt-PT', 'ru-RU', 'tr-TR']

預設為:en-US

isAlphanumeric(str [, locale]) : 檢查字元串是否隻包含字母和數字,語言環境和上面一樣,預設也是 en-US

isAscii(str) : 檢查字元串是否隻包含ASCII字元

isBase64(str) : 檢查字元串是否符合base64編碼格式

isBoolean(str)  : 檢查字元串是否是boolean值

isByteLength(str, options) : 檢查字元串的長度是否在一個範圍内,包含最大最小臨界值

isCreditCard(str) : 檢查字元串是否是信用卡

isCurrency(str, options)  : 檢查字元串是否是有效金額,options是個對象 預設:{symbol: '$', require_symbol: false,allow_space_after_symbol: false, symbol_after_digits: false, allow_negatives: true, parens_for_negatives: false,negative_sign_before_digits: false, negative_sign_after_digits: false, allow_negative_sign_placeholder: false,thousands_separator: ',', decimal_separator: '.', allow_space_after_digits: false }.

isDataURI(str)  : 檢查字元串是否是uri格式 isDate(str) : 檢查字元串是否是日期 isDecimal(str) : 檢查字元串是否是十進制數

isDivisibleBy(str, number) : 檢查字元串是否是整除的數 isEmail(str [, options])  : 檢查字元串是否是郵箱 ,options是一個對象預設為  { allow_display_name: false, allow_utf8_local_part: true, require_tld: true }

isFQDN(str [, options]) : 檢查字元串是否完全限定域名 , options是個對象,預設:{ require_tld: true, allow_underscores: false,allow_trailing_dot: false }.

isFloat(str [, options])  : 檢查字元串是否是浮點數, options是個對象,包含最大最小值,比如{min:0.5,max:10.5}

isFullWidth(str) : 檢查字元串是否包含全角字元

isHalfWidth(str) : 檢查字元串是否包含半角字元 isHexColor(str) : 檢查字元串是否是十六進制的顔色

isHexadecimal(str)  : 檢查字元串是否是十六進制數

isIP(str [, version])  : 檢查字元串是否是一個IP(版本 4 , 6)

isISBN(str [, version])  : 檢查字元串是否是一個ISBN(版本10 ,13),ISBN是國際标準書号,老版本10位,新版本13位. isISIN(str)  : 檢查字元串是否是ISIN , ISIN是國際證券識别編碼

isISO8601(str)  : 檢查字元串是否是有效的ISO8601日期

isIn(str, values) : 檢查字元串是否在允許的值

isInt(str [, options])  : 檢查字元串是否是整數,options是個對象,包含最大值,最小值,比如{min:0,max:100} isJSON(str) : 檢查字元串是否是有效的json格式

isLength(str, options)  : 檢查字元串長度是否在範圍内,options是個對象,包含最大值,最小值,比如{min:0,max:100}

isLowercase(str) : 檢查字元串是否都是小寫字母.

isMACAddress(str) : 檢查字元串是否是MAC位址

isMobilePhone(str, locale) : 檢查字元串是否是手機号,地區:['ar-DZ', 'ar-SY', 'cs-CZ', 'de-DE', 'da-DK', 'el-GR', 'en-AU',  'en-GB', 'en-HK', 'en-IN', 'en-NZ', 'en-US', 'en-CA', 'en-ZA', 'en-ZM', 'es-ES', 'fi-FI', 'fr-FR', 'hu-HU', 'ms-MY',  'nb-NO', 'nn-NO', 'pl-PL', 'pt-PT', 'ru-RU', 'tr-TR', 'vi-VN', 'zh-CN', 'zh-TW']).

isMongoId(str) : 檢查字元串是否是有效的mongodb objectid

isMultibyte(str) : 檢查字元串是否包含一個或多個多位元組字元

isNull(str)  : 檢查字元串是否為空,(length為0)

isNumeric(str) : 檢查字元串是否隻包含數字

isSurrogatePair(str) :  檢查字元串是否包含 emoji表情字元 (主要是手機端)

isURL(str [, options]) : 檢查字元串是否是個URL

isUUID(str [, version])  : 檢查字元串是否是UUID(版本3,4,5)

isUppercase(str) : 檢查字元串是否是大寫

isVariableWidth(str) : 檢查字元串是否包含全角和半角混合字元.

isWhitelisted(str, chars) 檢查str是否都出現在chars中

matches(str, pattern [, modifiers]) : 檢查字元串是否比對,比如 : matches('foo', /foo/i)或 matches('foo', 'foo', 'i').

-- 方法介紹

blacklist(input, chars) : 删除出現在黑名單中的字元

var blacklist = validator.blacklist('abcdefga','a');
 	console.log('blacklist :', blacklist);
           

結果 : bcdegf

whitelist(input, chars) : 和blacklist相反

escape(input)  : 将 <, >, &, ', " 和 / 轉換為html字元 

var escape = validator.escape('< - > - & - /');
 	console.log('escape :', escape);
           

結果 :  &lt; - &gt; - &amp; - &#x2F;

unescape(input) : 和 escape方法相反

var unescape = validator.unescape('< - > - & - /');
 	console.log('unescape :', unescape);
           

結果 :  < - > - & - /

ltrim(input [, chars])  : 從左邊開始删除滿足chars中的字元,直到不滿足為止.

var ltrim = validator.ltrim('abcadefgabc','abc');
 	console.log('ltrim :', ltrim);
           

結果 : defgabc

rtrim(input [, chars]) : 和 ltrim類似,從右邊開始

trim(input [, chars]) : 從左右兩邊同時删除.

toBoolean(input [, strict]) : 轉換為boolean類型

toDate(input) : 轉換為日期類型

toFloat(input)  : 轉換為浮點類型

toInt(input [, radix])  : 轉換為int類型