【发布时间】:2019-09-12 09:36:33
【问题描述】:
我正在使用 Google Apps 脚本的 GmailApp 类来获取邮件正文并以 html 格式显示。
正文没问题,但邮件错误:
ERR_UNKNOWN_URL_SCHEME。
有没有办法检索整个邮件正文,包括图片?
代码 GS:
function GetBodyMail(){
var thread = GmailApp.getThreadById("16cfd66654bb9593") ;
var mgs = thread.getMessages();
var mgsBody = mgs[0].getBody();
return mgsBody;
}
【问题讨论】:
-
您是否尝试过使用
getAttachments()method ofGmailMessage并将includeInlineImages参数设置为true? -
另外,您将
mgsBody还给什么?您如何尝试显示从您发布的功能中获得的电子邮件内容?我无法简单地通过将内联图像附加到邮件并使用您的示例中的getBody()方法来重现该错误。 -
@RafaGuillermo 感谢您回答我的问题。我返回 mgsBody 以在 HTML(网页)上查看它。我还是不明白你的方式,你能再给我解释一下吗?
-
从您的屏幕截图中,我可以看到您通过
getBody()方法检索的HTML 内容包含cid:image001.png@01D563D1.99511440,这不是<img>标记中图像的有效来源。 Gmail 邮件中的图像不与面向公众的 URL 一起存储,因此您必须通过调用getAttachments()方法单独获取附件,然后通过脚本将图像插入 HTML 内容,然后在末尾返回mgsBody函数。 -
你可以做一些事情,比如将它们转换为 URI,当你访问你的 HTML 页面时,浏览器会显示这些 URI,尽管 GMail 不支持消息正文中的数据 URI。嵌入在正文中的图像被 GMail 视为附件,因此您可以使用
getAttachments()方法从邮件中提取图像。
标签: google-apps-script gmail gmail-api