📜  Flutter 发送电子邮件 SMTP (1)

📅  最后修改于: 2023-12-03 15:30:49.534000             🧑  作者: Mango

Flutter 发送电子邮件 SMTP

简介

SMTP(Simple Mail Transfer Protocol)是发送邮件的标准协议。Flutter提供了SMTP库来发送电子邮件。在本文中,我们将介绍如何使用Flutter的SMTP库发送电子邮件。

安装

pubspec.yamldependencies 中添加以下依赖项:

dependencies:
  smtp: ^2.2.0

然后运行 flutter packages get 命令安装依赖项。

发送邮件

以下是使用SMTP库发送邮件的核心代码:

import 'package:smtp/smtp.dart';

final smtpServer = SmtpServer('smtp.example.com', username: 'username', password: 'password');

final message = Message()
  ..from = Address('your.email@example.com', 'Your Name')
  ..recipients.add('recipient1@example.com')
  ..ccRecipients.addAll(['recipient2@example.com', 'recipient3@example.com'])
  ..bccRecipients.add('recipient4@example.com')
  ..subject = 'Subject'
  ..text = 'This is the plain text message.';

final sendReport = await send(message, smtpServer);
print('Message sent: ${sendReport.toString()}');

首先,我们创建一个 SmtpServer 实例,指定 SMTP 服务器的主机名、用户名和密码(或授权码)。

然后,我们创建一个 Message 实例,设置发件人、收件人、抄送人、密送人、主题和正文。

最后,我们使用 send 函数发送消息,并记录发送报告。

注意:有些SMTP服务器需要启用TLS。在上面的代码中,我们使用的是默认的端口(25或465),这取决于服务器是否支持加密。如果您需要使用其他端口,需要将端口号作为第二个参数传递给 SmtpServer 构造函数,并将 secure 参数设置为 true

结论

使用Flutter的SMTP库发送电子邮件非常简单。只需几行代码,就可以轻松地发送电子邮件。如果您想了解有关SMTP的更多信息,请参阅SMTP协议标准。