从这个问题:https ://github.com/googleapis/google-api-go-client/issues/906
使用 api v3 列出和同步 gdrive 上的 excel 文件。
const fieldsContent = "nextPageToken, files(id, name,version, mimeType, size, md5Checksum,modifiedTime,lastModifyingUser,webViewLink)"
const qInParent = "'%s' in parents"
const trashFalse = " and trashed=false"
func (d *Drive) testList(id string) {
var driveService *drive.Service
var pageToken string
// .....init the service
fileList, err := driveService.Files.List().Q(fmt.Sprintf(qInParent, id)+trashFalse).
Fields(fieldsContent).
PageSize(pageSize).PageToken(pageToken).Do()
// ... print the files
}
只是一个简单的测试用例。
在2021-03-04T15:14:16+08:00
,得到 test.xlsx 状态:
Md5校验和:668395eb4b0db465efaf631df3aefd86
修改时间:2021-03-04T07:13:02.100Z
在2021-03-04T15:16:06+08:00
,得到 test.xlsx 状态:
Md5校验和:668395eb4b0db465efaf631df3aefd86
修改时间:2021-03-04T07:13:02.100Z
在2021-03-04T15:16:28+08:00
,得到 test.xlsx 状态:
Md5校验和:6155d40b7376d8c675c02ebd5a2394e9
修改时间:2021-03-04T07:13:48.638Z
文件第一次更改时间:2021-03-04T07:13:02.100Z
,第二次更改时间: 2021-03-04T07:13:48.638Z
,但是通过api,我们无法立即获取更改文件的信息,可能会延迟几分钟,有时可能会延迟10分钟。
更新:在 gdrive 上编辑文件后,几分钟内通过 api 下载文件。还是不能得到最新的文件,还是得到了以前的文件。