Inviare email in Rust tramite SMTP con lettre
In questo articolo vediamo come inviare una email in Rust usando SMTP.
Faremo uso della libreria lettre, molto facile da usare.
Possiamo installarla con questo comando:
cargo add lettre
Qui sotto un esempio di codice:
use lettre::{Message, SmtpTransport, Transport};
use lettre::message::header::ContentType;
use lettre::transport::smtp::authentication::Credentials;
fn main() {
let from = "Email from <email@from.it>";
let to = "Email to <email@to.it>";
let user = "VOSTRA_EMAIL";
let password = "VOSTRA_PASSWORD";
let smtp_address = "SMTP_EMAIL";
let email = Message::builder()
.from(from.parse().unwrap())
.to(to.parse().unwrap())
.subject("Test da Rust")
.header(ContentType::TEXT_HTML)
.body(String::from("Questa email è inviata da Rust!"))
.unwrap();
let creds = Credentials::new(user.to_owned(), password.to_owned());
let mailer = SmtpTransport::relay(smtp_address)
.unwrap()
.credentials(creds)
.build();
match mailer.send(&email) {
Ok(_) => println!("Email inviata correttamente!"),
Err(e) => panic!("Errore: {:?}", e),
}
}
Ovviamente dovete inserire i vostri parametri di accesso della email dalla quale volete inviare tramite SMTP.
Enjoy!
rust cargo email smtp lettre
Commentami!