【问题标题】:The recipient address <bd023813-ecb0-46ab-97b4-91b4ec64ad60> is not a 553 5.1.3 valid RFC-5321 address收件人地址 <bd023813-ecb0-46ab-97b4-91b4ec64ad60> 不是 553 5.1.3 有效的 RFC-5321 地址
【发布时间】:2021-12-08 06:41:22
【问题描述】:

我正在使用 Angular 开发一个 Web 应用程序。当我尝试向用户发送链接以重置密码时,出现此错误:

ERROR 17928 --- [nio-8080-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.mail.MailSendException: Failed messages: javax.mail.SendFailedException: Invalid Addresses;
  nested exception is:
    com.sun.mail.smtp.SMTPAddressFailedException: 553-5.1.3 The recipient address <bd023813-ecb0-46ab-97b4-91b4ec64ad60> is not a 553 5.1.3 valid RFC-5321 address. u14sm4774711wrw.91 - gsmtp; message exceptions (1) are:
Failed message 1: javax.mail.SendFailedException: Invalid Addresses; 
  nested exception is:
    com.sun.mail.smtp.SMTPAddressFailedException: 553-5.1.3 The recipient address <bd023813-ecb0-46ab-97b4-91b4ec64ad60> is not a 553 5.1.3 valid RFC-5321 address. u14sm4774711wrw.91 - gsmtp] with root cause

我的控制器:

  @PostMapping("/checkemail")
  public AccountResponse resetPasswordEmail(@RequestBody ResetPassword resetPassword) {
      boolean result = this.UserS.ifEmailExist(resetPassword.getEmail());
      AccountResponse accountresponse=new AccountResponse();
      if (result) {
          Mail mail = new Mail(resetPassword.getEmail(),UserCode.getCode());
          emailservice.sendCodeByMail(mail);
            
          accountresponse.setResultt(1);
      } else {
          accountresponse.setResultt(0);
      }
      return accountresponse;
  }

邮件类:

public class Mail {
    private String to;
    private String code;

    public Mail(String to, String code) {
        super();
        this.to = to;
        this.code = code;
    }
    public String getTo() {
        return to;
    }
    public void setTo(String to) {
        this.to = to;
    }
    public String getCode() {
        return code;
    }
    public void setCode(String code) {
        this.code = code;
    }
}

Application.properties:

spring.mail.protocol=smtp
spring.mail.host=smtp.googlemail.com
spring.mail.port=587
spring.mail.username=myemail
spring.mail.password=mypassword
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.starttls.enable= true
spring.mail.properties.mail.smtp.starttls.required=true

电子邮件服务:

public interface EmailService {
    public void sendCodeByMail(Mail mail);
}

EmailServiceImpl:

@Service
public class EmailServiceImpl implements EmailService {

    private JavaMailSender javaMailSender;

    @Autowired
    public EmailServiceImpl(JavaMailSender javaMailSender) {
        this.javaMailSender = javaMailSender;
    }

    @Override
    @Async
    public void sendCodeByMail(Mail mail) {
        // TODO Auto-generated method stub
        SimpleMailMessage simpleMailMessage = new SimpleMailMessage();
        simpleMailMessage.setFrom("example@gmail.com");
        simpleMailMessage.setTo(mail.getCode());
        simpleMailMessage.setSubject("Code Active");
        simpleMailMessage.setText(mail.getCode());
        javaMailSender.send(simpleMailMessage);
    }
}

【问题讨论】:

    标签: spring spring-security


    【解决方案1】:
    simpleMailMessage.setTo(mail.getCode());
    

    必须是:

    simpleMailMessage.setTo(mail.getTo());
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-11-23
      • 1970-01-01
      • 2017-09-08
      • 1970-01-01
      • 1970-01-01
      • 2021-11-12
      • 2017-02-03
      • 2022-07-26
      相关资源
      最近更新 更多