【问题标题】:JavaMail API, Gmail-Auth and setFromJavaMail API、Gmail-Auth 和 setFrom
【发布时间】:2010-12-06 03:11:48
【问题描述】:

对于这个应用程序,我遵循这个例子:

http://pipoltek.blogspot.com/2008/02/sending-mail-using-gmail-smtp-server.html

我可以发送电子邮件,看起来不错.....但我想使用此修改发件人电子邮件:

MimeMessage msg = new MimeMessage(mailSession);
msg.setFrom(new InternetAddress("baba-jaga@gmail.com"));

baba-jaga@gmail.com 是虚拟电子邮件,不是我的 :)

当我使用setFrom 时,我会收到来自这封电子邮件的电子邮件,我用它来进行身份验证。身份验证是禁用setFrom方法的原因吗?

我需要更改“发件人”电子邮件,因为我希望收件人向我发送重播到另一个电子邮件地址。

【问题讨论】:

    标签: java email gmail jakarta-mail sender


    【解决方案1】:

    Google 的 SMTP 服务器阻止使用来自已验证帐户的地址以外的发件人地址。这是一种防止所谓的“欺骗”的安全措施。也许您可以尝试将回复设置为另一个值,看看 Google 是否允许这样做。

    【讨论】:

    • 适用于雅虎,但不适用于谷歌。这似乎是谷歌 (coding.derkeiler.com/Archive/Java/comp.lang.java.programmer/…) 中的一个错误/功能。
    • @cupakob:如果 Google 不允许回复,那么使用 Google 的 SMTP 服务器发送电子邮件可能会很不走运。为出站电子邮件运行您自己的 SMTP 服务器不是一种选择吗?也许是 QMail 或 Postfix?
    • @Asaph:在这种情况下不会,我会很少使用这个应用程序(可能每 2-3 个月一次)。我可以在没有 gmail 收件人的情况下离开;)
    • @cupakob:"gmail 收件人"?收件人没有限制。只是发件人。
    • PHP 有问题,我设置的发件人地址不是 SMTP 身份验证帐户邮件 ID,它工作正常,我认为在 java 中设置发件人地址的方式可以用不同的方式完成, 可以参考我的帖子here
    猜你喜欢
    • 2011-09-21
    • 1970-01-01
    • 2017-09-10
    • 1970-01-01
    • 1970-01-01
    • 2013-05-29
    • 1970-01-01
    • 1970-01-01
    • 2020-05-26
    相关资源
    最近更新 更多