创建和管理文件

本指南介绍了如何在 Google 云端硬盘中创建和管理文件。

创建文件

如需在云端硬盘中创建不含任何元数据或内容的文件,请使用不带参数的 files.create 方法。该文件的 kinddrive.fileidname 为“无题”,mimeTypeapplication/octet-streamuploadType 标记为必需,但默认为 media,因此您实际上无需提供它。

如需详细了解云端硬盘文件限制,请参阅文件和文件夹限制

创建仅包含元数据的文件

仅包含元数据的文件不包含任何内容。元数据是描述文件的数据(例如 namemimeTypecreatedTime)。name 等字段与用户无关,对每个用户而言都显示相同的内容,而 viewedByMeTime 等字段则包含特定于用户的值。

仅包含元数据的文件的一个示例是 MIME 类型为 application/vnd.google-apps.folder 的文件夹。如需了解详情,请参阅创建和填充文件夹。另一个示例是指向云端硬盘上 MIME 类型为 application/vnd.google-apps.shortcut 的其他文件的快捷方式。如需了解详情,请参阅创建 Google 云端硬盘文件的快捷方式

管理缩略图

缩略图有助于用户识别云端硬盘文件。云端硬盘可以自动生成常见文件类型的缩略图,或者您也可以提供应用生成的缩略图。如需了解详情,请参阅上传缩略图

复制现有文件

如需复制文件并应用任何请求的更新,请使用 files.copy 方法。如需查找要复制的 fileId,请使用 files.list 方法。

请注意,您需要使用适当的 Drive API 作用域来授权该调用。如需详细了解云端硬盘范围,请参阅选择 Google Drive API 范围

限制和注意事项

在准备复制文件时,请注意以下限制和注意事项:

  • 权限

    • copyRequiresWriterPermission 文件限制决定了哪些人可以复制文件。如需了解详情,请参阅禁止用户下载、打印或复制您的文件
    • files 资源的 capabilities/canCopy 字段决定了用户是否可以复制文件。如需了解详情,请参阅功能
    • 创建副本的用户拥有复制的文件。系统不会复制源文件中的任何其他共享设置。如果副本是在共享文件夹中创建的,则会继承该文件夹的权限。
    • 复制的文件的所有权可能会发生变化,并且副本可能不会继承原始文件的共享设置。您可能需要重置这些设置。
  • 文件管理

    • 某些文件(例如第三方快捷方式)永远无法复制。
    • 您只能将文件复制到一个父级文件夹中。不支持指定多个父级。如果未指定 parents 字段,则文件会继承源文件中的所有可检测的父级。
    • 即使文件夹是文件类型,您也无法复制文件夹。 请改为创建一个目标文件夹,并将现有文件的 parents 字段设置为目标文件夹。然后,您可以删除原始源文件夹。
    • 除非指定了新文件名,否则 files.copy 方法会生成与原始文件同名的文件。
    • 过度使用 files.copy 可能会导致超出您的 Drive API 配额限制。如需了解详情,请参阅用量限额

您可以尝试以下几个后续步骤: