java - Appengine 不发送电子邮件

标签 java google-app-engine email jakarta-mail

我正在尝试使用 Appengine Mail API 从我的应用程序发送邮件。我正在运行下面的代码,它执行得很好,没有异常,但实际上没有发送邮件。这是代码:

public static void sendNotificationEmail(String subject, String message, String emailAddress) {
    System.err.println("Sending mail: " + emailAddress);
    Properties props = new Properties();
    Session session = Session.getDefaultInstance(props, null);

    try {
        Message msg = new MimeMessage(session);
        msg.setFrom(new InternetAddress("a@b.com", "Name"));
        msg.addRecipient(Message.RecipientType.TO, new InternetAddress(emailAddress));
        msg.setSubject(subject);
        msg.setText(message);
        Transport.send(msg);
        System.err.println("done");
    }
    catch (Exception e) {
        System.err.println(e);
    }
}

a@b.com 是该应用程序的注册所有者(但不是计费管理员)。查看日志,打印了“完成”但没有发送电子邮件。

有什么想法吗?

更新:

发现电子邮件实际上是通过但在垃圾邮件文件夹中。有什么方法可以让我的应用程序更多(声誉)不被标记为垃圾邮件。当系统发生变化时,我们的应用会向用户发送通知电子邮件。

最佳答案

也许您的电子邮件被标记为垃圾邮件,因为它是从不同的主机发送的,我的意思是它可能不是 GMail 连接的域。

在这种情况下,为了防止它被标记为垃圾邮件,配置SPF 非常有帮助。对于您的域,请参阅谷歌帮助:Creating an SPF record .前段时间对我有帮助

关于java - Appengine 不发送电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8633121/

相关文章:

Java:您如何真正使用 JVMTI 的 ForceGargabeCollection 强制 GC?

java - 将 Await、Signal、SignalAll 替换为 wait、notify 和 notifyAll

java - 如何递归计算两个数的乘法

google-app-engine - 有没有建立在 Google App Engine 之上的成功网站?

java - 使用 DOM 保存到 XML 时停止转义特殊字符

python - Django 和 App Engine - 2012 更新

django - Google App Engine Standard 找不到/执行 Gunicorn

android - Android 上的传入邮件通知

c# - 有什么方法可以在 NLog 邮件目标中使用 system.net/mailSettings/smtp 中的 'from' 地址?

r - 如何在 R 中发送读取 csv 的电子邮件并一次发送多封电子邮件?