6 个稳定版本
1.0.5 | 2022 年 3 月 4 日 |
---|---|
1.0.3 | 2021 年 12 月 13 日 |
1.0.2 | 2021 年 12 月 9 日 |
1.0.1 | 2021 年 12 月 8 日 |
#168 在 电子邮件
用于 letterman
50KB
1K SLoC
letterman_email_body_parser
这是一个基于 tokio 的电子邮件正文解析器和 DKIM 验证器,输入不应包含数据结束标志 "\r\n.\r\n",DKIM 密钥在 tokio RwLock 中缓存以加快读取速度,如果没有提供 DKIM,验证将返回成功。
示例代码
use letterman_email_body_parser::{init,Config,io};
#[tokio::main]
async fn main() {
//io is for testing this is exposed as a module so keep that in mind
let value:String;
match io::read_string("./gl_alt_atch.txt"){
Ok(v)=>{value = v;},
Err(_)=>{
println!("failed-read_file");
return;
}
}
let hold:Vec<&str> = value.split("\r\n").collect();
let conf:Config;
match Config::new(){
Ok(v)=>{conf = v;},
Err(_)=>{
println!("failed-conf");
return;
}
}
match init(hold,&conf){
Ok(mut email)=>{
println!("email body parsed");
match email.validate(&conf).await{
Ok(_)=>{
println!("email validated");
},
Err(_e)=>{
println!("email validation failed : {:?}",_e);
}
}
},
Err(_e)=>{
println!("email body failed : {:?}",_e);
}
}
}
依赖项
~11–20MB
~282K SLoC