首页 > 解决方案 > Spring Boot 中的电子邮件

问题描述

我正在尝试制作一个关于在 Spring Boot 中使用发送电子邮件的项目,thymeleaf 但出现错误:

出现意外错误(类型=内部服务器错误,状态=500)。失败消息:javax.mail.SendFailedException:无效地址;嵌套异常是:com.sun.mail.smtp.SMTPAddressFailedException: 553 5.1.2 收件人地址不是有效的 RFC-5321 地址。n143-v6sm7661221ion.53 - gsmtp

项目链接是:在此处输入链接描述

标签: javaspring-boot

解决方案


根据错误日志,您正在向格式错误的电子邮件地址发送电子邮件。您尝试使用哪个电子邮件地址发送电子邮件?也许您缺少主机名和顶级域之间的@或。.

更新:我在您的代码中发现了错误:

你自己MailService有以下方法

public void sendMail(String from, String to, String subject, String body) {

        SimpleMailMessage mail = new SimpleMailMessage();
        mail.setFrom(from);
        mail.setTo(to);
        mail.setSubject(subject);
        mail.setText(body);

        javaMailSender.send(mail);
    }

因此,您需要 validfromto参数,它们必须是有效的电子邮件地址,例如yourname@yourdomain.com.

在您的控制器中,您调用如下方法:

mailService.sendMail("property_mail","contact_mail",subject,message);

但是 "property_mail"并且"contanct_mail"没有有效的电子邮件地址...

例如,以下调用将起作用:

mailService.sendMail("noreply@yourname.com", mail, subject, message);mail您从控制器方法获得的参数在哪里。


推荐阅读