1 回答
TA贡献1842条经验 获得超21个赞
您想检索根文件夹下的所有文件。
您想使用带有 golang 的 google-api-go-client 来实现此目的。
您已经使用 Drive API 获取和放置 Google Drive 的值。
如果我的理解是正确的,这个答案怎么样?请认为这只是几个可能的答案之一。
问题和解决方法:
从情况来看When I call this function, it return me files that only I added with my program (this program also can upload files to Google Drive), not all files.
,我认为您的范围可能包括https://www.googleapis.com/auth/drive.file
. 当https://www.googleapis.com/auth/drive.file
用作范围时,仅检索应用程序创建的文件。
为了检索根文件夹下的所有文件,请使用以下范围。
https://www.googleapis.com/auth/drive
https://www.googleapis.com/auth/drive.readonly
https://www.googleapis.com/auth/drive.metadata.readonly
https://www.googleapis.com/auth/drive.metadata
.
如果您只想检索文件列表,.readonly
可以使用范围。
修改后的脚本:
从您的问题中,我注意到您正在使用带有 golang 和 Go Quickstart 的 google-api-go-client。在这种情况下,如何进行以下修改?
如果drive.DriveFileScope
包含在范围内,请进行如下修改。
从:
config, err := google.ConfigFromJSON(b, drive.DriveFileScope)
到:
config, err := google.ConfigFromJSON(b, drive.DriveMetadataScope)
或者
config, err := google.ConfigFromJSON(b, drive.DriveReadonlyScope)
如果您还想上传文件,请使用
drive.DriveScope
.
笔记:
当您修改范围时,请删除
token.json
.tokFile := "token.json"
请运行脚本并再次授权。这样,修改后的范围就会反映到访问令牌和刷新令牌中。请注意这一点。
- 1 回答
- 0 关注
- 72 浏览
添加回答
举报