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

如何通过Apps Script读取自定义Drive文件的appProperties属性?

解决Drive文件自定义appProperties读取问题

正确读取方式

你通过DriveApp.getFileById()获取的文件对象无法直接访问appProperties属性,要读取通过高级Drive服务设置的自定义appProperties,必须使用高级Drive服务的Drive.Files.get()方法,并在参数中明确指定返回字段包含appProperties。

示例代码

function getAppProperty(fileId) {
  try {
    // 指定返回字段包含id和appProperties
    const file = Drive.Files.get(fileId, {fields: 'id,appProperties'});
    Logger.log('文件ID: %s,appProperties: %s', file.id, JSON.stringify(file.appProperties, null, 2));
    
    // 单独读取某个具体属性
    if (file.appProperties?.department) {
      Logger.log('部门属性值: ' + file.appProperties.department);
    }
  } catch (err) {
    Logger.log('读取失败: %s', err.message);
  }
}

核心原因说明

  • DriveApp是Google Apps Script的基础服务,仅提供基础文件操作能力,不支持访问高级Drive服务专属的appProperties字段。
  • 高级Drive服务的Files.get方法默认仅返回文件的基础字段,必须通过fields参数显式声明要获取appProperties,否则不会返回该字段数据。

官方文档相关提示

Google Apps Script高级Drive服务的文档中明确说明:

使用Files.get方法获取文件资源时,需通过fields参数指定需要返回的字段集合。若未指定,仅会返回默认的基础字段,不包含appProperties这类自定义扩展字段。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 11:22:43