为了账号安全,请及时绑定邮箱和手机立即绑定

Java Mail API 在不修改 FROM 标头的情况下路由电子邮件

Java Mail API 在不修改 FROM 标头的情况下路由电子邮件

蝴蝶刀刀 2022-12-28 14:32:38
我有 2 个电子邮件地址,我想将所有邮件从一个电子邮件地址路由(自动转发)到另一个电子邮件地址。不幸的是,我的邮件客户端上的这个功能停止工作了,我想创建一个小型控制台应用程序来检查我的电子邮件并每 10 分钟自动转发一次。我开始使用 Java Mail API 在 Java 中开发控制台应用程序,但我在设置适当的 FROM 标头时遇到了问题。当我设置原始发件人电子邮件地址并尝试发送电子邮件时,SMTP 抛出异常:SMTP mail FROM does not match authenticated user name。它合乎逻辑,因为这样我可以伪造电子邮件地址发件人,但我不希望电子邮件像我发送的那样出现在另一封电子邮件中。出于多种原因需要这样做:更容易阅读当我想回复电子邮件时,我希望能够回复我的原始发件人而不是我自己我已经使用 PHP 在我的网站联系表单上实现了这一点,但我不知道如何在 Java 中做到这一点。我将尝试以更简单的方式解释情况。我提出了 2 封电子邮件:a@a.com和b@b.com现在电子邮件来自c@c.com于a@a.com我想将电子邮件从转发a@a.com到b@b.com,但是当邮件到达b@b.comFROM 标头时,我想看到它来自c@c.com(不是来自a@a.com)我的问题是:这是否可能,如果可能,我如何将标头 FROM 设置为原始发件人。
查看完整描述

1 回答

?
慕码人2483693

TA贡献1860条经验 获得超9个赞

这完全取决于您的邮件服务器是否允许您向 b@b.com 发送邮件而不显示它来自 a@a.com。大多数服务器不允许这样做。

更简单的解决方案是从 a@a.com 的收件箱中读取消息,并使用 Folder.appendMessages 将其附加到 b@b.com 的收件箱中,而不是使用 Transport.sendMessage 重新发送。


查看完整回答
反对 回复 2022-12-28
  • 1 回答
  • 0 关注
  • 98 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号