gpt4 book ai didi

javascript - 如何获取我自己的 Google Drive 文件的 md5Checksum 字段(仅使用类和对象,不使用 http 请求)?

转载 作者:行者123 更新时间:2023-12-02 02:42:22 26 4
gpt4 key购买 nike

我想检查我在谷歌驱动器上上传的文件的 md5 校验和(在同一个谷歌帐户内)。

我想使用 Google Apps 脚本 (script.google.com) 执行此操作。

我已经仔细阅读了文档,但仍然不明白如何获取文件的元数据。

我发现了很多使用 webAPI (v2,v3) 的示例,但它需要处理 OAuth token 、解析 http 响应...为什么会有 Google Apps 脚本?

这是我的工作示例,它从名为“test”的文件夹中获取文件 id = 文件名,但我想调用 md5Checksum attr...

function testDrive(){
var collectionFolder = DriveApp.getFoldersByName('test');
if (collectionFolder.hasNext()){
var itemFolder = collectionFolder.next();
var collectionFile = itemFolder.getFiles();
while(collectionFile.hasNext()){
var itemFile = collectionFile.next();
Logger.log(itemFile.getId(),'=',itemFile.getName());
}
}
}

P.S.:我曾经做过自己的校验和 (sha256) 函数来处理每个获取的文件 blob(二进制),但每个 blob 的限制为 ~25mb。

最佳答案

解决方案

documentation您可以看到 File 资源在其 JSON 表示中包含 md5Checksum

由于 DriveApp 类没有 md5Checksum 包装器,因此您必须使用高级 Google 服务。此功能允许您使用 Drive API 的相同功能,但要通过 Apps 脚本环境。在 Apps 脚本编辑器中,点击 Resources>Advanced Google services...>Drive API (v2)。 IDE 将在您第一次运行函数时负责授权。

以下是使用 Drive API 高级服务检索您的云端硬盘文件的 md5Checksum 的示例:

let files = Drive.Files.list();
for (item of files.items) {
Logger.log(item['md5Checksum']);
}

Note: An MD5 checksum for the content of this file. This field is only populated for files with content stored in Google Drive; it is not populated for Google Docs or shortcut files.

引用

Drive API

Advanced Google Services

关于javascript - 如何获取我自己的 Google Drive 文件的 md5Checksum 字段(仅使用类和对象,不使用 http 请求)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63356102/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com