2017-01-31 5 views
1

Wir verwenden die GMail Api in einer C# -Anwendung und haben eine Nachricht mit einem eingebetteten Bild erhalten. Sie können das Bild sehen, wenn Sie sich das GMail-Konto ansehen (in einem Browser als Benutzer), aber ich kann es weder in der Payload finden, noch bekomme ich eine Anhangs-ID, wenn ich die API benutze.Zugriff auf eingebettete Bilder

Unterstützt die API sogar den Zugriff auf eingebettete Bilder?

Wenn ich benutze:

var part = message.Payload.Parts 
          .Where(x => x.MimeType.Equals(mimeType)) 
          .Select(x => x.Body.Data) 
          .FirstOrDefault(); 

Mit dem Typ Mime auf GIF, JPEG oder Tiff es kommt immer wieder null;

+0

Sie verwenden hier eine Art von. NET API, bitte markieren Sie Ihre Frage damit. – DavidG

+0

Wenn du Mime-Typen wie "Gif, Jpeg oder Tiff" passierst, überträgst du sie als richtige "image/gif" Pantomime? versuche vielleicht 'x.MimeType.Contains (" image ")', um alle Bildformate zu erhalten. –

Antwort

0

Sie könnten die überprüfen möchten - Users.messages: get

Ruft die angegebene Nachricht.

Um auf der Struktur besonders beim Lesen der E-Mail-Nachricht Ressourcen Darstellungen vertraut zu sein. Ich habe die Try it now verwendet, um die Users.messages resource in den Antworttext zu bekommen und wie es gebildet wird.

Beim Überprüfen der E-Mail wird das eingebettete Bild in die Nutzlast fallen.

........ 
    { 
     "partId": "1", 
     "mimeType": "image/png", 
     "filename": "pasted1", 
     "headers": [ 
     { 
      "name": "Content-Type", 
      "value": "image/png; name=pasted1" 
     }, 
......... 

So sollte es aussehen.

Hoffe, das hilft.

+0

Jungs Danke für Ihre prompten Antworten. Also habe ich heute Morgen ein bisschen mehr nachgesehen. Wir haben zwei E-Mails, in beiden Fällen scheinen sie eingebettete Bilder zu haben. In einem Fall ist es ein "image/png" und hat auch einen Teil. Body.AttachmentId also alles gut, ich kann es mit dem api extrahieren. In dem anderen Fall (der die Frage ausgelöst hat), wenn ich über alle Teile iteriere, gibt es kein Bild, aber wenn Sie diese E-Mail in GMail im Browser betrachten, können Sie ein eingebettetes Bild sehen (das auch ein Png zu sein scheint) . Vielleicht gibt es eine Art Bug in der Api. – UtlGatekeeper

Verwandte Themen