You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Apps Script中Drive.Files.export导出Google文档至Word失败求助

解决Google Apps Script中高级Drive服务导出Word文档的异常问题

问题原因分析

  1. 第一个错误(Export requires alt=media)
    官方文档描述存在遗漏:在Google Apps Script环境中,调用Drive.Files.export下载二进制文件内容时,必须显式指定{alt:'media'}参数。如果不添加该参数,API默认返回文件元数据而非导出的二进制内容,因此触发错误。

  2. 第二个错误(二进制乱码的HttpResponseException)
    添加alt:'media'后,API返回的是Word文件的二进制字节流,此时Drive.Files.export会返回HttpResponse对象,直接赋值给变量会因GAS无法直接解析二进制内容抛出异常。需要通过getBlob()方法提取二进制数据并创建文件。

正确代码示例

// 替换为目标Google文档的ID
const fileId = "DriveFileIdHere";
// 调用导出接口并指定alt=media获取二进制响应
const response = Drive.Files.export(fileId, MimeType.MICROSOFT_WORD, {alt: 'media'});
// 将响应转为Blob并创建Word文件
const wordFile = DriveApp.createFile(
  "导出的文档.docx", // 自定义文件名
  response.getBlob(),
  MimeType.MICROSOFT_WORD
);
// 可选:输出文件ID验证
console.log("导出文件ID:" + wordFile.getId());

关键注意事项

  • 确保目标文件是原生Google Docs文档,而非已上传的Word文件(已上传的Word文件无需导出,直接下载即可)。
  • 遵守官方限制:导出内容大小不能超过10MB。
  • MIME类型需匹配:MimeType.MICROSOFT_WORD对应docx格式,若需doc格式可使用MimeType.MICROSOFT_WORD_LEGACY。

内容的提问来源于stack exchange,提问作者Adam_N

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 10:09:53