Es gibt zwei Möglichkeiten, E‑Mails über die Gmail API zu senden:
- Sie können sie direkt mit der Methode
messages.send
senden. - Sie können sie über einen Entwurf mit der Methode
drafts.send
senden.
E-Mails werden als base64url-codierte Strings in der raw
-Eigenschaft einer Nachrichtenressource gesendet. Der allgemeine Workflow zum Senden einer E‑Mail sieht so aus:
- Erstellen Sie den E‑Mail-Inhalt auf eine beliebige Weise und codieren Sie ihn als base64url-String.
- Erstellen Sie eine neue Nachrichtenressource und legen Sie deren
raw
-Attribut auf den base64url-String fest, den Sie gerade erstellt haben. - Rufen Sie
messages.send
an oder, wenn Sie einen Entwurf senden,drafts.send
, um die Nachricht zu senden.
Die Details dieses Workflows können je nach Clientbibliothek und Programmiersprache variieren.
Nachrichten erstellen
Für die Gmail API sind MIME-E-Mail-Nachrichten erforderlich, die RFC 2822 entsprechen und als base64url-Strings codiert sind. Viele Programmiersprachen haben Bibliotheken oder Dienstprogramme, die das Erstellen und Codieren von MIME-Nachrichten vereinfachen. Die folgenden Codebeispiele zeigen, wie Sie eine MIME-Nachricht mit den Google APIs-Clientbibliotheken für verschiedene Sprachen erstellen.
Java
Das Erstellen einer E‑Mail-Nachricht kann mit der Klasse MimeMessage
im Paket javax.mail.internet
erheblich vereinfacht werden. Das folgende Beispiel zeigt, wie die E‑Mail-Nachricht einschließlich der Kopfzeilen erstellt wird:
Im nächsten Schritt wird MimeMessage
codiert, ein Message
-Objekt instanziiert und der Base64Url-codierte Nachrichtenstring als Wert der raw
-Eigenschaft festgelegt.
Python
Im folgenden Codebeispiel wird gezeigt, wie eine MIME-Nachricht erstellt, in einen base64url-String codiert und dem Feld raw
der Message
-Ressource zugewiesen wird:
Nachrichten mit Anhängen erstellen
Das Erstellen einer Nachricht mit Anhang ähnelt dem Erstellen einer beliebigen anderen Nachricht. Das Hochladen der Datei als mehrteilige MIME-Nachricht hängt jedoch von der Programmiersprache ab. Die folgenden Codebeispiele zeigen mögliche Wege zum Erstellen einer mehrteiligen MIME-Nachricht mit einem Anhang.
Java
Im folgenden Beispiel wird gezeigt, wie eine mehrteilige MIME-Nachricht erstellt wird. Die Schritte für die Codierung und Zuweisung sind dieselben wie oben.
Python
Ähnlich wie im vorherigen Beispiel wird in diesem Beispiel auch die Nachricht in base64url codiert und dem Feld raw
der Message
-Ressource zugewiesen.
Nachrichten senden
Nachdem Sie eine Nachricht erstellt haben, können Sie sie senden, indem Sie sie im Anfragetext eines Aufrufs an messages.send
angeben, wie in den folgenden Beispielen gezeigt.
Java
Python
Wenn Sie eine Antwort senden und die E‑Mail in einem Thread zusammengefasst werden soll, achten Sie darauf, dass
- Die
Subject
-Header stimmen überein. - Die Header
References
undIn-Reply-To
entsprechen dem RFC 2822-Standard.
Informationen zum Senden einer Nachricht aus einem Entwurf finden Sie unter Entwürfe erstellen.