Inviare email in Dart con SMTP
Oggi vediamo come inviare una email in Dart usando SMTP.
Ovviamente dovete avere i parametri del vostro provider; qui mi limiterò a delle voci generiche.
Cominciamo insallando la libreria, aggiungendo la dipendenza al file pubspec.yaml:
dependencies:
mailer: any
Oppure usando il comando:
$ dart pub add mailer
Fatto questo vediamo un esempio di codice:
import 'package:mailer/mailer.dart';
import 'package:mailer/smtp_server.dart';
main() async {
String username = 'username@gmail.com';
String password = 'password';
final smtpServer =
SmtpServer('smtp.com', username: username, password: password);
final message = Message()
..from = Address(username, 'NOME')
..recipients.add('email@email.com')
..ccRecipients.addAll(['cc1@email.com', 'cc2@email.com'])
..bccRecipients.add(Address('bcc@email.com'))
..subject = 'Invio email di teste alle ${DateTime.now()}'
..html = "<h1>Test</h1>n<p>Ciao, questa email è una prova da Dart!</p>";
try {
final sendReport = await send(message, smtpServer);
print('Messaggio inviato: ' + sendReport.toString());
} on MailerException catch (e) {
print('Messaggio non inviato');
for (var p in e.problems) {
print('Errore: ${p.code}: ${p.msg}');
}
}
}
Enjoy!
dart smtp mailer pubspec
Commentami!