smtp - Javamail API 发送邮件到 smtp 和 smtps

标签 smtp jakarta-mail smtps

我正在构建一个邮件客户端,我想知道我的 session 是否能够支持所有类型的 smtp 连接......虽然我真的不知道我能从那里得到什么

我想确认以下内容是否正确

1 - 对于 SMTP,我只需要主机:

props.put("mail.smtp.host", host);

我不需要用户和密码吗?

2 - 对于 SMTPS,我需要设置 tls 还是它总是正确的? SSL 呢?

我对邮件协议(protocol)有点菜鸟,所以我非常感谢在这个主题上的一些帮助。

最佳答案

我建议花一些时间在 JavaMail FAQ 上,其中有更多资源可帮助您入门。

回答您的直接问题...

  1. 是否需要用户名和密码取决于您的邮件服务器。大多数公共(public)邮件服务器都这样做。一些公司内部的邮件服务器没有。
  2. “smtps”是“通过 SSL 连接的 smtp”。正式地,“TLS”只是“SSL”的标准版本,但在这种情况下,当人们提到“TLS”时,他们通常指的是“STARTTLS”命令。 STARTTLS 命令允许您建立纯文本(非 SSL)连接,然后将该连接切换为使用 SSL (TLS)。如果您使用的是“smtps”协议(protocol),则不需要它,因为它首先建立 SSL 连接。

关于smtp - Javamail API 发送邮件到 smtp 和 smtps,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13085750/

相关文章:

java - 改变 multipart/XXX 内容类型而不改变底层部分

Java邮件 : How to use different SOCKS5 for different threads?

spring - 如何使用 SMTP 为 SES 配置 Spring JavaMailSender?

java - 使用 AuthenticatingSMTPClient 和 SSL?

python - Gmail 使用特定于应用程序的密码阻止来自 Python 的登录尝试

java - 为什么 appfuse 不发送电子邮件? (SMTP发送失败异常)

java - "Sending the email to the following server failed : webmail.company.com:465"

java - 使用 JavaMail 发送带有内联图像的 HTML 电子邮件 - 图像加载速度慢?

perl - 无法使用 Perl 中的 Net::SMTP 模块在端口 465 上提交电子邮件

c# - 发送到多个电子邮件地址但只显示一个 C#