Wie satt werden, im Körper der Nachricht in Gmail?
Ich will satt werden, im Körper der Nachricht. Also versuche ich:
Message gmailMessage = service.users().messages().get("me", messageId).setFormat("full").execute();
Dass man Körper, ich versuche:
gmailMessage.getPayload().getBody().getData()
aber Ergebnis immer null
. Wie man die volle Nachricht Körper?
- entfernen Sie die setFormat?
- Der Grund diese Besondere version nicht funktioniert ist, dass die raw-Feld null ist Absicht. Wenn Sie einen Blick auf die api-docs hier. developers.google.com/gmail/api/v1/reference/users/messages/get. Die "full" - format nicht verwenden Sie die raw-Bereich.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Fand ich mehr interessante Art und Weise, wie zu beheben eine Ganzkörper-Nachricht (und nicht nur body):
Habe ich versucht auf diese Weise, da Nachricht.getPayload().getBody().getParts() immer null
(...)
Und das Ergebnis ist reiner HTML-String
Um die Daten aus Ihrem gmailMessage, die Sie verwenden können, gmailMessage.Nutzlast.Teile[0].Körper.Daten. Wenn Sie wollen, Sie zu entschlüsseln in lesbaren text, können Sie Folgendes tun:
Wenn Sie die Meldung (com.google.api.services.gmail.Modell.Mitteilung), könnten Sie die folgenden Methoden verwenden:
Er verbindet alle Teile der Nachricht mit dem MIME-Typ "text/plain" und gibt es als string.
hier ist die Lösung in c# - code gmail API v1 zum Lesen der E-Mail-Text Inhalt:
und zu lösen, die Daten Fehler
UsersResource.ThreadsResource.GetRequest.FormatEnum.Full
Basis, auf die @Tholle Kommentar, den ich gemacht habe, dass so etwas wie
Wenn wir die vollständige Nachricht. Der Nachrichtentext ist im inneren Teile.
Dies ist ein Beispiel, in dem message-Header (Datum, Von, An und Betreff) angezeigt werden und der Nachrichtentext als unformatierter text angezeigt. Teile der Nutzlast gibt beide Arten von Nachrichten (nur text und formatierten text). Ich war daran interessiert, text.