当前位置: 首页 > 知识库问答 >
问题:

当邮件有附件时,Gmail API不返回邮件正文

郑桐
2023-03-14

我一直在与Gmail API的意外行为作斗争。

到目前为止,我都是通过邮件获取每封邮件的正文。有效载荷。部分[0]。身体数据,其中包含base64中的消息体。在这种情况下,零件的MimeType为text/plain。

问题是,当我检索的邮件有附件时,parts[0]MimeType是“multipart/alternative”,它的主体只有空字段。

如果邮件正文有附件,我该如何获取它?

谢谢

共有1个答案

姜彬郁
2023-03-14

您可以尝试在这个网站的解决方案。

C#简化了网络编程。Net框架。C#描述了使用Socket通信、SMTP邮件、UDP、URL等通信编程的各种协议。系统。Net类用于通过使用HTTP、TCP、UDP、Socket等与其他应用程序通信。在前面的程序中,我们看到了如何从C#发送SMTP电子邮件,描述了如何发送带有文本主体的电子邮件。在这里,我们发送一封带有附件的电子邮件。

下面是提供的示例代码,

using System;
using System.Windows.Forms;
using System.Net.Mail;

namespace WindowsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                MailMessage mail = new MailMessage();
                SmtpClient SmtpServer = new SmtpClient("smtp.gmail.com");
                mail.From = new MailAddress("your_email_address@gmail.com");
                mail.To.Add("to_address");
                mail.Subject = "Test Mail - 1";
                mail.Body = "mail with attachment";

                System.Net.Mail.Attachment attachment;
                attachment = new System.Net.Mail.Attachment("your attachment file");
                mail.Attachments.Add(attachment);

                SmtpServer.Port = 587;
                SmtpServer.Credentials = new System.Net.NetworkCredential("username", "password");
                SmtpServer.EnableSsl = true;

                SmtpServer.Send(mail);
                MessageBox.Show("mail Send");
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }
        }
    }
}

也可以参考官方。NET从留档开始,这里对api进行了深入的讨论,同时介绍了示例代码和逐步设置过程。

如需进一步参考,您可以访问这篇SO帖子。

 类似资料:
  • 问题内容: 我目前在工作中使用的是自定义库。直到刚刚结束,图书馆才运转良好。从今天开始,它显然返回false。 库本身基本上是函数邮件的包装器。它构建“边界”部分以及所有内容。 由于该类足够大,因此我不会在此处发布它……但是我想知道,理论上为什么邮件返回假的原因是什么? SMTP是在PHP.ini中设置的 发件人设置在标题中 发件人为int形式:> 一切都正确发送(body + headers +

  • 我一直在使用此脚本向某些员工发送电子邮件,但由于我的系统发生了更改,我现在必须随电子邮件发送附件,我尝试了多个代码来完成此任务,但都没有成功。。。我仍然收到电子邮件,但没有附件,这在这种情况下是毫无意义的,我已经把我正在使用的脚本放在下面 我已经删除了我使用的真实地址和smtp服务器 我也尝试了一些其他的emtods附加的文件,但似乎没有工作任何帮助是大大的

  • 我试图使用gmail API发送电子邮件。如下所示,我的Ruby代码在没有附件的情况下运行良好: 我能够成功地以html格式发送电子邮件。我的问题是如何将文件附加到此邮件? 但我收到的信息如下: --内容类型:文本/纯文本;charset=UTF-8内容传输编码:7bit嗨,Alex,生活怎么样? --内容类型:图像/png; filename=image.png内容传输编码:bas64内容配置:

  • AIR Native Extension:可以在Flash中指定附件路径进行发送 [Code4App.com]

  • 问题内容: 我正在使用sendgrid发送电子邮件,并且使用以下代码可以正常工作,但没有附件。 但是我需要发送附件,因此我搜索了github源和Web文档API,由于某种原因,没有javadocs,但是有一个示例GitHub sendgrid, 所以我一直在尝试直到它起作用为止,我缩小了一些异常和响应代码,起初我是被禁止的未经授权,最好是响应202,表示有效且已排队(在此处检查),这是我的代码发送

  • 如何从内容类型为“多部分/备选”的邮件中下载附件;