在用nodejs時,需要對使用者輸入的資料進行驗證。在前端做驗證時,我們常用的做法是使用正則,正規表示式也許可以一步到位,但是他只會給你true or false,如果想要知道資料不符合哪些條件時,那麼你要進一步判斷,下面和大家分享一種可讀性和易用性更好的實現方法。
joi是hapijs提供的資料檢驗外掛程式,與 hapi一樣出自沃爾瑪實驗室團隊。joi 的 api 因其豐富的功能,使得驗證資料結構與數值的合規,變得格外容易。
1.安裝
npm i joi
2.使用const joi = require('joi');
const schema = joi.object().keys($/),
access_token: [joi.string(), joi.number()],
birthyear: joi.number().integer().min(1900).max(2013),
email: joi.string().email()
}).with('username', 'birthyear').without('password', 'access_token');
// return result.
const result = joi.validate(, schema);
//result:,
// then: [function: then],
// catch: [function: catch]
//}
除了物件object以外,還有一些js的基本資料型別也支援。
const joi = require('joi');
//number型別
const schema = joi.number();
let result = joi.validate('213aa',schema);
//或者
//let result = schema.validate('213aa');
console.log(result);
//不符合型別,error有值
//result:
更多的資料型別、方法看官方文件:
3.瀏覽器
joi並不直接支援瀏覽器,但可以將joi-browser用於在瀏覽器中執行的joi的es5版本。
資料校驗 CRC校驗
工作原理 crc即迴圈冗餘校驗碼 cyclic redundancy check 是資料通訊領域中最常用的一種查錯校驗碼,其特徵是資訊字段和校驗欄位的長度可以任意選定。迴圈冗餘檢查 crc 是一種資料傳輸檢錯功能,對資料進行多項式計算,並將得到的結果附在幀的後面,接收裝置也執行類似的演算法,以保證資...
A 資料校驗
我們利用上面的ajax開發框架來做兩個簡單的應用 在之間增加一段form表單 在開發框架的基礎上再增加乙個呼叫函式 function usercheck else 看看sample1 2.jsp做了什麼 page contenttype text html charset gb2312 errorp...
關於資料校驗
1.什麼是資料校驗 通俗的說,就是為保證資料的完整性,用一種指定的演算法對原始資料計算出的乙個校驗值。接收方用同樣的演算法計算一次校驗值,如果和隨資料提供的校驗值一樣,就說明資料是完整的。2.最簡單的檢驗 實現方法 最簡單的校驗就是把原始資料和待比較資料直接進行比較,看是否完全一樣這種方法是最安全最...