3 个版本
使用旧的 Rust 2015
0.2.2 | 2017年1月15日 |
---|---|
0.2.1 | 2017年1月14日 |
0.2.0 | 2017年1月14日 |
57 在 #query-string
31KB
391 行
form-checker-rs
为 Web 开发者提供的库,用于检查提交的表单或查询字符串中的值。
安装
# Cargo.toml
[dependencies]
form-checker = "0.2"
示例
extern crate form_checker;
use form_checker::{Validator, Checker, Rule, Str, I64};
fn main() {
// Prepare params, this is just for illustrating. Usually, we get
// params through decoding a URL-encoded string into a
// HashMap<String, Vec<String>>.
let mut params = std::collections::HashMap::new();
params.insert("name".to_string(), vec!["bob".to_string()]);
params.insert("age".to_string(), vec!["20".to_string()]);
// Make a new Validator.
let mut validator = Validator::new();
// Add Checkers to Validator.
validator
.check(Checker::new("name", "姓名", Str)
.meet(Rule::Max(5))
.meet(Rule::Min(2)))
.check(Checker::new("age", "年龄", I64)
.meet(Rule::Max(100))
.meet(Rule::Min(18)));
// Validate it!
validator.validate(¶ms);
// Decide whether it is valid.
assert!(validator.is_valid());
// Show me the valid data, assuming it is valid.
assert_eq!(validator.get_required("name").as_str().unwrap(), "bob".to_string());
assert_eq!(validator.get_required("age").as_i64().unwrap(), 20);
}
完整文档
许可协议
form-checker-rs
主要在 MIT 许可协议的条款下分发。
请参阅 LICENSE-MIT 以获取详细信息。
依赖项
~3.5MB
~72K SLoC