【问题标题】:Script - GmailApp.SendEmail with InlineImages from Google Drive脚本 - 带有来自 Google Drive 的 InlineImages 的 GmailApp.SendEmail
【发布时间】:2017-05-14 13:02:33
【问题描述】:

嗨,我正在尝试制作一个脚本来从别名 gmail 帐户发送内联图像。我在 GmailApp-s 文档中找到了大部分代码,但现在我卡在了最后一步......请帮助,我如何让这部分工作?

谢谢!

var html =  
'<body>' + 
  '<img src='cid:image'>' +
'</body>' 

    function testGmailApp() {  
var ImageBlob = DriveApp
                      .getFileById('0Bx4vy5p9TA6bekY3Q2ZNdzViVkE')
                      .getBlob()
                      .setName("ImageBlob");
      GmailApp.sendEmail(
'example@gmail.com', 
'test GmailApp', 
'test',{
htmlBody: html, 
inlineImages: {image: ImageBlob}
      }); 

}

【问题讨论】:

  • 欢迎。有错误吗?如果有,请以文字形式附上。有关此类问题指南的更多详细信息,请参阅minimal reproducible example
  • 您可以按照此处的示例为邮件应用插入inline image。在这种情况下,邮件应用程序和 gmail 应用程序的语法相同。
  • 缺失;声明之前。 (第 3 行,文件“附加”)。 @Jack Brown - 这是我尝试的第一件事,只是在邮件前面添加了 g,它不再起作用了。
  • 我上面粘贴的代码第三行也是错误的,应该是:'' +
  • 您应该可以使用问题末尾的编辑链接来编辑问题。这是一个重大错误,大多数读者都会指出。

标签: google-apps-script gmail


【解决方案1】:

以下是在电子邮件中插入内嵌图像的方法。您可以在documentation for MailApp 中找到这方面的示例。在这种发送内联图像的特殊情况下,两个函数的语法保持不变。

如文档中所述,插入内联图像的第一步是插入带有src =" cid:"Name of the image blob in inlineimages object here"img 标签 html 字符串将如下所示:

var html =  
'<body>' + 
  '<h2> Test <img src = "cid:image"> </h2><br />' +
'</body>'

其余函数保持不变。
注意: src 指向 cid:image,即内联图像对象中的键名。

最终代码:

var html =  
    '<body>' + 
      '<h2> Test <img src = "cid:image"> </h2><br />' +
    '</body>'

    function testGmailApp() {  
var ImageBlob = DriveApp
                      .getFileById('0Bx4vy5p9TA6bekY3Q2ZNdzViVkE')
                      .getBlob()
                      .setName("ImageBlob");
      GmailApp.sendEmail(
'someone@gmail.com', 
'test GmailApp', 
'test',{
htmlBody: html, 
inlineImages: {image: ImageBlob}
      }); 
}

【讨论】:

  • 如果这回答了您的问题,请点击此答案旁边的复选标记接受解决方案。
猜你喜欢
  • 1970-01-01
  • 2013-04-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-05
  • 1970-01-01
相关资源
最近更新 更多