2011-12-26 49 views
1

我想使用Appengine Mail API從我的應用程序發送郵件。我正在運行下面的代碼,沒有例外地執行罰款,但沒有實際發送郵件。代碼如下:Appengine不發送電子郵件

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("[email protected]", "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); 
    } 
} 

[email protected]是應用程序(但不是計費管理員)的註冊所有者。查看日誌,將打印「完成」,但不發送電子郵件。

任何想法?

UPDATE:

發現了電子郵件實際上是打通但在垃圾郵件文件夾。任何讓我的應用更多(聲譽)不被標記爲垃圾郵件的方式。當系統發生變化時,我們的應用程序會向用戶發送通知電子郵件。

+0

它有可能在垃圾郵件文件夾中嗎? – 2011-12-26 08:29:30

+0

你找到了!它位於垃圾郵件文件夾中。請問如何將我標記爲垃圾郵件以及如何最好地防止它? – aloo 2011-12-26 11:07:37

回答

4

也許你郵件標記爲垃圾郵件,因爲它是從不同的主機發送的,我的意思是說它可能不是GMail連接的域名。

在這種情況下,爲防止它被標記爲垃圾郵件,爲您的域配置SPF非常有幫助,請參閱Google幫助:Creating an SPF record。它已經幫我一段時間了

相關問題