【问题标题】:Google Apps Script - send pdf in emailGoogle Apps 脚本 - 通过电子邮件发送 pdf
【发布时间】:2013-08-15 07:20:13
【问题描述】:

我有一个发送电子邮件的脚本。我想对其进行设置,以便在我的谷歌驱动器中使用 pdf 附件发送电子邮件。文件名是pdfholder.pdf

这是当前工作(无附件)和发送电子邮件的代码

MailApp.sendEmail(userEmail, subject, message);

这是不工作(带有附件)且不发送电子邮件的代码

var file = DocsList.getFileById('pdfholder');
MailApp.sendEmail(userEmail, subject, message, {attachments:file});

关于如何使它工作的任何想法?我是谷歌应用程序脚本的新手,非常感谢您提供简单/彻底的解释。谢谢!

【问题讨论】:

    标签: email google-apps-script gmail


    【解决方案1】:

    可选参数附件所需的参数是一个数组(如documentation 中清楚显示的那样)。 这是为了便于处理多个附加文件。在你的情况下,它将是一个单一元素的数组:[文件] 所以你的最终代码(确实)是

    MailApp.sendEmail(userEmail, subject, message, {attachments:[file]});
    

    【讨论】:

    • "没有冒犯,但这类问题需要的不仅仅是一行代码...... 恕我直言,“非专家”提问者通常需要一个解释和/或文档链接。” – Serge insas / William Chiquito 说:完全同意。不幸的是,我没有足够的时间对这个问题给出更详细的答案,所以我只放了代码。在未来的场合将避免这种类型的答案。谢谢你。我删除了我的答案。
    • 我正在使用 GmailApp。一切正常,但是当我们下载附件时。它被下载为“文件类型”而不是“PDF 类型”。可能是什么问题?
    【解决方案2】:

    官方文档也有一个专门用于此目的的示例:

    // 发送带有两个附件的电子邮件:来自 Google Drive 的文件(PDF 格式)和 HTML 文件。 var 文件 = DriveApp.getFileById('1234567890abcdefghijklmnopqrstuvwxyz'); var blob = Utilities.newBlob('在此处插入任何 HTML 内容', 'text/html', 'my_document.html'); MailApp.sendEmail('mike@example.com', '附件示例', '附加了两个文件。', { name: '自动电子邮件脚本', 附件:[file.getAs(MimeType.PDF), blob] });

    见: https://developers.google.com/apps-script/reference/mail/mail-app

    【讨论】:

      猜你喜欢
      • 2020-12-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-14
      • 1970-01-01
      • 1970-01-01
      • 2022-08-20
      • 1970-01-01
      相关资源
      最近更新 更多