google-apps-script - Google Apps 脚本 - Gmail - 是否可以将邮件作为附件转发?
问题描述
使用 Google Apps Script Google Workspace 服务可以将消息作为附件转发,而不仅仅是此处所述的普通转发 - https://developers.google.com/apps-script/reference/gmail/gmail-message#转发收件人?
编辑:我需要这个来处理当前查看的消息。与此类似的东西:
function onGmailMessageOpen(e) {
const message = GmailApp.getMessageById(e.messageMetadata.messageId);
message.forward("abc@def.com");
}
onGmailMessageOpen
contextualTrigger 函数在哪里。
解决方案
您不能仅使用 Google Apps 脚本直接将邮件作为附件转发
作为一种解决方法,我建议您使用额外的服务和以下代码:
function forwardAsAttachment() {
var messageRaw = Gmail.Users.Messages.get("email@example.com", "IDexample", {format: "raw"});
var message = Utilities.newBlob(messageRaw.raw, "message/rfc822", "Subject");
MailApp.sendEmail("recipient@example.com", "Title", "Body", {
attachments: [message]
});
}
首先,我将 Gmail API 服务添加到项目中并检索所需的消息以获取 RAW 消息。
然后我创建了一个格式为 RFC822 的 Blob,这是服务所期望的原始消息,然后发送格式化和base64URL 编码的消息。
参考
推荐阅读
- wpf - 为什么 GeckoFX 网页浏览器总是在顶部?我如何告诉它尊重等级制度?
- python - Python pyqt5如何将QMainWindow转换为QGraphicsView并用QPainter预览
- c - dlmopen() 无法解析创建的命名空间中定义的函数符号
- java - 使用updateOHLCSeries时xchart java swing无法正确绘制数据
- php - 如何在视图功能中使用成功消息以及 withDetails?
- node.js - 当用户从托管在 Digital Ocean 上的 Web 应用程序将图像上传到 AWS S3 时,是出站还是入站带宽传输?
- javascript - 从 API 获取所有数据
- swiftui - 如何在 SwiftUI 中设置图像色调?
- c - 这个 MIPS 程序应该花这么长时间吗?(近似于 pi 的程序)
- ios - 使用 NSBatchInsertRequest 将自定义数组插入 CoreData