gpt4 book ai didi

java - 无需身份验证/没有发件人密码即可发送 java 电子邮件

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:07:43 25 4
gpt4 key购买 nike

我正在尝试发送没有发件人密码的 java 电子邮件。您可以在下面看到代码。我将 mail.smtp.authtrue 更改为 false。有一个覆盖方法,方法名称 getPasswordAuthentication():

public class SendMailUtilNineThirty implements Runnable {

final private String SMTP_SERVER = "192.186.16.14";
final private String SMTP_PORT = "135";
final private String TO_EMAIL = "saman@thal.com";
final private String TO_EMAIL = "dumidu@thal.com";
final private String FROM_EMAIL = "samanchandana@thal.com";
final private String FROM_EMAIL_PASSWORD = "1qaz2wsx@";

public void sendEmail(String emailContent, String subject) {
try {
Properties props = new Properties();
props.put("mail.transport.protocol", "smtp");
props.put("mail.smtp.host", SMTP_SERVER);
props.put("mail.smtp.port", SMTP_PORT);
props.put("mail.smtp.auth", "false");
Session mailSession = Session.getInstance(props, new Authenticator() {
@Override
public PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(FROM_EMAIL, FROM_EMAIL_PASSWORD);
}
});

mailSession.setDebug(true);
MimeMessage message = new MimeMessage(mailSession);
message.setFrom(new InternetAddress(FROM_EMAIL));
message.addHeader("site", "thal.com");
message.addHeader("service", "Thal Service");
message.setSentDate(new Date());
message.addRecipients(Message.RecipientType.TO, InternetAddress.parse(TO_EMAIL));
message.setSubject(subject);

如何在没有密码验证的情况下发送电子邮件?谢谢。

最佳答案

一般来说,您需要向邮件服务器进行身份验证。如果您运行自己的邮件服务器,您可以将其设置为不需要身份验证,但没有任何公共(public)电子邮件服务供应商会允许这样做,我希望这是显而易见的原因。

关于java - 无需身份验证/没有发件人密码即可发送 java 电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52143584/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com