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

使用Apps Script上传文件至S3被转JSON,如何保留CSV格式?

解决Apps Script上传S3文件被转为JSON的问题

问题出在两个核心环节:文件内容的获取方式和上传时的MIME类型指定,结合你使用的S3工具库,可按以下方案修复:

  1. 确保获取Google文件的原始内容
    从Google Workspace取文件时,要拿到原始文本/二进制数据,而非自动序列化的JSON对象。示例代码:

    // 通过文件ID获取目标文件
    const targetFile = DriveApp.getFileById('你的文件ID');
    // 获取文件的原始文本内容(适用于txt/csv格式)
    const content = targetFile.getBlob().getDataAsString();
    
  2. 上传时显式指定MIME类型
    你使用的S3工具库的putObject方法支持传入额外请求头参数,通过Content-Type指定文件的MIME类型,避免默认转为JSON。修改后的上传代码:

    S3.init();
    // 第五个参数为配置对象,指定Content-Type
    S3.putObject("bucket123", 'Tacofile.txt', content, 'ca-central-1', {
      'Content-Type': 'text/csv' // 若为纯文本文件则改用'text/plain'
    });
    

原理:该库默认会对非二进制内容做JSON序列化处理,通过传入原始文本内容+显式指定Content-Type,就能强制S3以指定格式存储文件,不会被转为JSON结构。

内容的提问来源于stack exchange,提问作者Carlo B.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 06:35:26