Erstellen eine Nachricht für die Gmail-API in C#
Ich bin auf der Suche mit der Gmail API in eine Anwendung, mit der ich arbeite. Allerdings bin ich mir nicht sicher, wie Sie zu ändern Sie Ihre Java-oder Python-Beispiele über C#. Wie funktioniert das genau mit dem vorhandenen Muster zu ändern über?
Java ist so nah an C#, sicherlich haben Sie versucht, es zu konvertieren und haben es versäumt, einige, wie? Vielleicht posten was du schon versucht zu konvertieren, wäre ein guter Anfang für die Menschen, um Ihnen zu helfen, wo Sie falsch sind
Naja, ich bin auf der Suche nach äquivalenten zu
Google-APIs sind alle REST-APIs. Die ärzte sagen Ihnen, welche Parameter müssen gehen Sie in Ihr REST-API-Aufrufe.
Naja, ich bin auf der Suche nach äquivalenten zu
MimeMessage
, Properties
usw. und schnelles Googeln hat auch nicht geholfen.Google-APIs sind alle REST-APIs. Die ärzte sagen Ihnen, welche Parameter müssen gehen Sie in Ihr REST-API-Aufrufe.
InformationsquelleAutor muttley91 | 2014-07-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
War dies ein heikles problem zu lösen, aber ich habe am Ende immer es. Verwendet habe ich das NuGet-Paket
AE.Net.Mail
um die RFC 2822-bit.Den gleichen code mit ein wenig weitere Analyse und Gründe sind hier veröffentlicht:
http://jason.pettys.name/2014/10/27/sending-email-with-the-gmail-api-in-net-c/
Sorry für die Verwirrung gibt -- das ist ein Verweis auf meinen eigenen code zurückgibt, Google.Apis.Services.BaseClientService.Initialisierung eingerichtet ist zum hinzufügen von OAuth2 Bearer-token auf jede Anfrage. Sie können möglicherweise verwenden Sie einfach die Standard-GmailService () - Konstruktor -- hängt davon ab, wie Ihre GmailService ist die Authentifizierung. Ich werde zu aktualisieren meinem code, zu versuchen, mehr klar.
Dieser code funktioniert ok für eine nur-text E-Mail. Funktioniert aber nicht mit HTML E-Mail + Anhang.
Für alle, die sich an diesem in die Zukunft, stellen Sie sicher, dass Sie die
AE.Net.Mail
Nuget-Paket (nuget.org/packages/AE.Net.Mail) und nichtSystem.Net.Mail
(msdn.microsoft.com/en-us/library/system.net.mail(v=vs. 110).aspx). Sie sind der sehr ähnlich, aber etwas anders funktionieren (z.B.System.Net.Mail.MailMessage
nicht dieSave
Methode)InformationsquelleAutor pettys
Hier ist, was ich in der Lage war, zu arbeiten, mit MimeKit.
@Eric Die Gmail-Api fehlen, da es erfordert die Verbraucher zu Durchlaufen haben, einige Tänze zu tun, etwas relativ einfaches. Für .Net, es sollte so einfach wie das Auffüllen einer Message-Objekt (Subject, From, To, Body, etc) und übergeben das Objekt auf eine Send-Funktion, mit der die Codierung.
Mindestens die Api-Dokumentation geben sollte, ein funktionsfähiges Beispiel mit keine 3rd-party-Bibliotheken wie MimeKit oder AE.Net.E-Mail erforderlich.
Hinweis: Wenn Sie eine E-Mail-bounce-Problem, es ist wahrscheinlich die Einstellung nicht ReplyToList Feld. Siehe: GMail-API E-Mails Bouncen
InformationsquelleAutor Xtros
Scheint, wie dies ist nicht wirklich ein Problem mit der Gmail API. Was sollten Sie suchen, ist "c# - E-Mail erstellen" (potenziell hinzufügen ", RFC 2822", wie das der RFC definiert das format für diese E-Mails). Sobald Sie eine solche gültige "E-Mail-Nachricht" (das tatsächliche, gesamte E-Mail-Inhalte, die Sie verwenden können, mit SMTP oder IMAP, etc) dann mit der Gmail API sollte ziemlich trivial.
Haben Sie nichts finden? Versuchen, dasselbe problem zu lösen.
Leider nicht. Wir mussten aufgeben, Gmail API, wie es nicht funktioniert und wir hatten nicht viel Zeit zu verbringen, wenn wir könnten nur mit einer einfacheren E-Mail-Absender. Google könnte wirklich stehen, zu verbessern, Ihre Dokumentation, die auf dieser...
Danke für die Antwort. Ich war in der Lage, um endlich die raw RFC-2822-Nachricht Byte nuget-Paket AE.Net.E - Mail - github.com/andyedinborough/aenetmail. Ich weiß, was du meinst, über die Gmail-API -- hat mich den ganzen Tag, bis schließlich es um eine Nachricht zu senden.
rar/pettys: was genau war das problem, dass du nicht in der Lage, herauszufinden, wie kann oder könnte docs besser sein verbessert? Der schwierigste Teil IMO scheint zu sein, das erstellen einer E-Mail-Nachricht und das ist nicht wirklich spezifisch für den API -, Sie müssen das gleiche zu tun, egal, ob Sie mit SMTP oder der API oder IMAP. Sobald Sie die E-Mail-Nachricht string nur base64url der Enkodierung und übertragung in das richtige URL ist ziemlich trivial und es gibt gute java-code zu zeigen.
InformationsquelleAutor Eric D