gpt4 book ai didi

java - 如何在javamail中设置正确的电子邮件地址?

转载 作者:行者123 更新时间:2023-12-01 04:26:16 25 4
gpt4 key购买 nike

我正在尝试使用以下方法发送电子邮件。它工作正常,但我面临一个问题。我想使用不同的“发件人”地址,然后是我用于 gmail 身份验证的地址。因此,在下面的代码中,我将“message.setfrom”设置为 sender@comp.com,但当收件人收到电子邮件时,发件人地址仍然是 user@gmail.com。

请帮助我确定我在这里做错了什么,以及如何将发件人地址正确设置为“sender@comp.com”。感谢你的帮助!谢谢!!

    private void sendMail(String textBody, String subject) {
try {
final String messageSender = "user@gmail.com";
final String pass = "pass";
/** get my properties **/
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.starttls.enable", "true");
props.put("mail.smtp.host", "smtp.gmail.com");
props.put("mail.debug", "true");
props.put("mail.smtp.debug", "true");
props.put("mail.smtp.port", "587");

/** get default session object **/
Session session = Session.getDefaultInstance(props, new javax.mail.Authenticator()
{
protected PasswordAuthentication getPasswordAuthentication()
{
return new PasswordAuthentication(messageSender, pass);
}
});

MimeMessage message = new MimeMessage(session);

String[] to = {"abc@test.com"};
InternetAddress[] addressTo = new InternetAddress[to.length];

message.setRecipients(MimeMessage.RecipientType.TO, addressTo);
message.setSubject(subject);

BodyPart messageBodyPart = new MimeBodyPart();

// Fill the message
messageBodyPart.setText(textBody);

// Create a multipart message
Multipart multipart = new MimeMultipart();

// Set text message part
multipart.addBodyPart(messageBodyPart);

// Send the complete message parts
message.setContent(multipart);
message.setFrom(new InternetAddress("sender@comp.com"));

//send message
Transport.send(message);

} catch (MessagingException e) {
e.printStackTrace();
}

}

最佳答案

Gmail 会阻止您这样做。您能做的最好的事情就是更改回复。

关于java - 如何在javamail中设置正确的电子邮件地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18454605/

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