13 个版本 (7 个破坏性更新)
0.9.1 | 2024年4月1日 |
---|---|
0.9.0 | 2023年3月12日 |
0.8.0 | 2023年2月3日 |
0.5.0 | 2022年6月27日 |
0.1.0 | 2019年11月11日 |
#22 in 电子邮件
5,513 每月下载量
用于 8 个 Crates (4 直接使用)
78KB
2K SLoC
async-smtp
SMTP 的异步实现
基于出色的 lettre 库。
示例
pub type Error = Box<dyn std::error::Error + Send + Sync>;
pub type Result<T> = std::result::Result<T, Error>;
use async_smtp::{Envelope, SendableEmail, SmtpClient, SmtpTransport};
async fn smtp_transport_simple() -> Result<()> {
let stream = TcpStream::connect("127.0.0.1:2525").await?;
let client = SmtpClient::new();
let mut transport = SmtpTransport::new(client, stream).await?;
let email = SendableEmail::new(
Envelope::new(
Some("user@localhost".parse().unwrap()),
vec!["root@localhost".parse().unwrap()],
)?,
"Hello world",
);
transport.send(email).await?;
Ok(())
}
许可
许可协议
- Apache 许可协议第 2.0 版 (LICENSE-APACHE 或 http://www.apache.org/licenses/LICENSE-2.0)
- MIT 许可协议 (LICENSE-MIT 或 http://opensource.org/licenses/MIT) 由您选择。
贡献
除非您明确说明,否则根据 Apache-2.0 许可证定义的,您有意提交以包含在作品中的任何贡献,将按照上述方式双重许可,不附加任何额外条款或条件。
依赖关系
~2–13MB
~167K SLoC