记录下javaMail发送邮件遇到的问题-(邮件中文昵称)

在实现邮箱功能时,遇到使用JavaMail发送包含中文昵称的邮件失败问题。邮件虽然显示发送成功,但实际被退回。解决办法是使用MimeUtility进行转码,将中文昵称转码后,邮件可以正常发送。测试验证了该方法的有效性。
摘要由CSDN通过智能技术生成

最近在做邮箱功能,其中发件时也需要记录下邮箱的昵称,所以代码中的邮箱地址前会有中文昵称,这也导致邮件发送失败

后台显示邮件发送成功,但是却被退回

Mail delivery failed: returning message to sender

其中,收件地址是这样写的:中文昵称<111111@qq.com> ;

List<String> tos = new ArrayList<>();
tos.add("人不风流枉为人<11111111@qq.com>");
if (ValidateUtils.isNotEmpty(tos)) {
    InternetAddress[] toAddress = new InternetAddress[tos.size()];
     for (int i = 0; i < tos.size(); i++) {
           toAddress[i] = new InternetAddress(tos.get(i));
     }
    msg.addRecipients(Message.RecipientType.TO, toAddress);
}

将邮件中文名称去掉,或者改为英文名称

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值