C# 访问嵌入的图像

C# 访问嵌入的图像,c#,.net,gmail-api,C#,.net,Gmail Api,我们正在C#应用程序中使用GMail Api,并收到了一条带有嵌入图像的消息。 如果您查看GMail帐户(以用户身份在浏览器中),您可以看到该图像,但我无法在有效负载中找到它,也无法在使用api时获取附件id api甚至支持访问嵌入式图像吗 如果我使用: var part = message.Payload.Parts .Where(x => x.MimeType.Equals(mimeType))

我们正在C#应用程序中使用GMail Api,并收到了一条带有嵌入图像的消息。 如果您查看GMail帐户(以用户身份在浏览器中),您可以看到该图像,但我无法在有效负载中找到它,也无法在使用api时获取附件id

api甚至支持访问嵌入式图像吗

如果我使用:

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

Mime类型设置为Gif、Jpeg或Tiff时,它总是返回空值

您可能需要检查-

获取指定的消息

特别是在阅读电子邮件资源表示时,要熟悉结构。我用这个函数来获取响应体中的响应,以及它将如何形成

检查电子邮件时,嵌入的图像将落在有效负载中

........
    {
        "partId": "1",
        "mimeType": "image/png",
        "filename": "pasted1",
        "headers": [
         {
          "name": "Content-Type",
          "value": "image/png; name=pasted1"
         },
.........
应该是这样的


希望这能有所帮助。

您可能需要检查-

获取指定的消息

特别是在阅读电子邮件资源表示时,要熟悉结构。我用这个函数来获取响应体中的响应,以及它将如何形成

检查电子邮件时,嵌入的图像将落在有效负载中

........
    {
        "partId": "1",
        "mimeType": "image/png",
        "filename": "pasted1",
        "headers": [
         {
          "name": "Content-Type",
          "value": "image/png; name=pasted1"
         },
.........
应该是这样的


希望这有帮助。

您在这里使用的是某种.Net API,请用它来标记您的问题。当您将mime类型作为
Gif、Jpeg或Tiff
传递时,您是否将它们作为适当的
image/Gif
mime类型传递?也许可以尝试
x.MimeType.Contains(“image”)
来获取所有图像格式。您在这里使用的是某种.Net API,请用它来标记您的问题。当您以
Gif、Jpeg或Tiff
的形式传递mime类型时,您是否将它们作为正确的
image/Gif
mime类型传递?也许可以尝试
x.MimeType.Contains(“图像”)
来获取所有的图像格式。谢谢你们的及时回复。所以今天早上我做了更多的检查。在这两种情况下,我们收到了两封电子邮件,它们似乎都嵌入了图像。在一个例子中,它是一个“image/png”,并且还有part.Body.AttachmentId,所以我可以使用api将其提取出来。在另一种情况下(这引发了一个问题),如果我遍历所有部分,就没有图像,但是当你在浏览器中查看GMail中的这封电子邮件时,你可以看到一个嵌入的图像(看起来也是png)。可能Api中有一些bug。谢谢你们的及时回复。所以今天早上我做了更多的检查。在这两种情况下,我们收到了两封电子邮件,它们似乎都嵌入了图像。在一个例子中,它是一个“image/png”,并且还有part.Body.AttachmentId,所以我可以使用api将其提取出来。在另一种情况下(这引发了一个问题),如果我遍历所有部分,就没有图像,但是当你在浏览器中查看GMail中的这封电子邮件时,你可以看到一个嵌入的图像(看起来也是png)。可能Api中存在某种缺陷。