我只是一个使用谷歌脚本的初学者,所以如果这是一个非常愚蠢的问题,请善待:)
我的脚本目前通过电子邮件发送pdf,这是从谷歌驱动器文件创建的,如下所示:
var pdf = DriveApp.getFileById(copyId).getAs("application/pdf");
我也想通过电子邮件发送docx文件,但当然不太容易。 我找到了一种方法:
Using Google Script to send an email with a Word doc attachment
...但它似乎使用了一个不再有效的旧解决方案。代码:
var url = 'https://docs.google.com/feeds/';
var doc = UrlFetchApp.fetch(url+'download/documents/Export?exportFormat=doc&format=doc&id='+copyId,
googleOAuth_('docs',url)).getBlob();
错误:
执行失败:ReferenceError:未定义“googleOAuth_”。
我使用正确的方法但是有错误,还是有更好的方法来导出docx?
非常感谢您的帮助和耐心!
答案 0 :(得分:0)
如果您仍在寻找解决方案,那么这个答案怎么样?要将Google文档转换为docx并导出docx,请使用访问令牌。在您的情况下,您可以使用ScriptApp.getOAuthToken()
作为访问令牌。那么下面的修改呢?
var url = 'https://docs.google.com/feeds/';
var doc = UrlFetchApp.fetch(url+'download/documents/Export?exportFormat=doc&format=doc&id='+copyId,
googleOAuth_('docs',url)).getBlob();
var url = "https://docs.google.com/feeds/download/documents/export/Export?id=" + copyId + "&format=docx&access_token=" + ScriptApp.getOAuthToken();
var docx = UrlFetchApp.fetch(url).getBlob();
docx
。如果您需要doc文件,请修改它。docx
是docx的blob。请使用此代替脚本的pdf
。如果我误解了你的问题,我很抱歉。