Die Mail Service API für Java unterstützt die Schnittstelle JavaMail (javax.mail
) zum Senden von E-Mail-Nachrichten.
Hinweise
Registrieren Sie die Absender-E-Mail-Adressen als autorisierte Absender. Weitere Informationen finden Sie unter Wer E-Mails senden kann.
E-Mail-Nachrichten senden
Mit den JavaMail-Klassen, die im App Engine SDK enthalten sind, können Sie E-Mail-Nachrichten versenden.
Wenn Sie eine JavaMail-Sitzung erstellen und keine SMTP-Serverkonfiguration angeben, versendet App Engine Nachrichten über den Mail-Dienst. Alternativ können Sie eine SMTP-Konfiguration für unterstützte E-Mail-Drittanbieter wie Mailgun, Mailjet oder SendGrid einrichten.
So senden Sie eine Nachricht:
Erstellen Sie eine Nachricht mit einem JavaMail
Session
-Objekt.Erstellen Sie ein
MimeMessage
-Objekt.Verwenden Sie die Klasse
InternetAddress
, um den Absender und Empfänger der Nachricht festzulegen.Ermitteln Sie den Absender durch Aufrufen der Methode
setFrom()
für das ObjektMimeMessage
. Optional können Sie im zweiten Parameter einen Personennamen als String angeben.Bestimmen Sie den Empfänger, indem Sie einen Empfängertyp und eine Adresse an die Methode
addRecipient()
übergeben. Der Empfängertyp kann seinMessage.RecipientType.TO
,Message.RecipientType.CC
oderMessage.RecipientType.BCC
.
Der
InternetAddress
-Konstruktor löst eineAddressException
aus, wenn die E-Mail-Adresse offenbar ungültig ist.Verwenden Sie die Methode
setReplyTo()
, um eine Antwortadresse festzulegen.Legen Sie den Nachrichteninhalt durch Aufruf von Methoden für das Objekt
MimeMessage
fest. Legen Sie den Betreff mitsetSubject()
fest und legen Sie den Textkörper des Klartexts mitsetText()
fest.Verwenden Sie zum Senden der Nachricht die statische Methode
send()
für die KlasseTransport
.
Der Mail-Dienst ermöglicht die Angabe einer begrenzten Zahl von Headern für ausgehende E-Mail-Nachrichten. Weitere Informationen dazu finden Sie unter Zulässige optionale Header.
Hier ein Codebeispiel für das Senden von E-Mail-Nachrichten:
Aufrufe an den Mail-Dienst erfolgen asynchron und werden sofort zurückgegeben. Der Mail-Dienst verwaltet die Kontaktaufnahme mit den Mailservern der Empfänger und die Nachrichtenlieferung. Tritt beim Senden der Nachricht an einen Empfänger ein Problem auf oder gibt der Mail-Server eines Empfängers eine "Bounce"-Nachricht zurück, wird die Fehlermeldung an den Absender gesendet.
Mehrteilige Nachrichten senden
Sie können mehrteilige Nachrichten senden, z. B. eine Nachricht mit Dateianhängen oder eine Nachricht mit unformatiertem und HTML-Nachrichtentext.
So senden Sie eine mehrteilige Nachricht:
Erstellen Sie ein
MimeMultipart
-Objekt für die einzelnen Teile und einMimeBodyPart
-Objekt für jeden Anhang oder alternativen Nachrichtentext und fügen Sie diese dem Container hinzu.Weisen Sie den Container dem Inhalt für
MimeMessage
zu.
Hier ein Codebeispiel für den Versand einer mehrteiligen Nachricht:
Aus Sicherheitsgründen müssen Nachrichtenteile und -anhänge einem von mehreren verschiedenen zulässigen Typen entsprechen und die Dateinamen der Anhänge müssen mit einer erkannten Dateinamenerweiterung für diesen Typ enden. Eine Liste der zulässigen Typen und Dateinamenerweiterungen finden Sie unter E-Mail mit Anhängen.