如何移除Google Card Service生成的Gmail草稿中的用户签名?
解决Gmail草稿自动附加签名的问题
问题出在你通过GmailApp.createDraft创建草稿后,用setGmailDraft返回给ComposeAction时,Gmail会默认自动添加用户签名。要避免这个情况,不需要提前创建草稿,直接在ComposeActionResponseBuilder里配置邮件内容并禁用签名即可。
修改后的代码如下:
function onHomepage(e) { var builder = CardService.newCardBuilder(); var section = CardService.newCardSection() .addWidget(CardService.newTextButton() .setText('Button') .setComposeAction(CardService.newAction().setFunctionName('doStuff'), CardService.ComposedEmailType.STANDALONE_DRAFT)); builder.addSection(section); return builder.build(); } function doStuff(e){ var body = 'This is a <b>test</b>'; return CardService.newComposeActionResponseBuilder() .setTo('') // 保持原收件人设置 .setSubject('Subject') .setHtmlBody(body) .setIncludeSignature(false) // 关键:禁用自动添加签名 .build(); }
关键修改说明:
- 移除了
GmailApp.createDraft的调用,不再提前创建草稿 - 直接在
ComposeActionResponseBuilder中设置邮件的收件人、主题和HTML内容 - 添加
setIncludeSignature(false)参数,明确告诉Gmail不要自动附加用户签名
这样生成的草稿打开后,只会显示你预填充的HTML内容,不会带上用户签名。
内容的提问来源于stack exchange,提问作者Jeremiah
相关产品推荐
相关产品推荐

