rust 发送邮件的实现方法与示例代码
最近在学Rust,想实现一个发送邮件的功能,但不太清楚具体该怎么操作。请问在Rust中发送邮件有哪些常用的库?能否提供一个简单的示例代码展示如何通过SMTP发送带附件的邮件?最好能包含服务器配置、认证和错误处理等完整流程。听说lettre这个库不错,但官方文档看得有点迷糊,有没有更接地气的实现方案?
2 回复
使用 lettre 库发送邮件:
use lettre::{Message, SmtpTransport, Transport};
fn main() -> Result<(), Box<dyn std::error::Error>> {
let email = Message::builder()
.from("发件人 <from@example.com>".parse()?)
.to("收件人 <to@example.com>".parse()?)
.subject("测试邮件")
.body("邮件内容".to_string())?;
let mailer = SmtpTransport::relay("smtp.example.com")?
.credentials(lettre::transport::smtp::authentication::Credentials::new(
"用户名".to_string(),
"密码".to_string(),
))
.build();
mailer.send(&email)?;
Ok(())
}
需要添加依赖:lettre = "0.10"


