我正在尝试获取我在Google云端硬盘(Python,Flask)中创建的文件夹的列表:
SCOPES = ['https://www.googleapis.com/auth/drive']
drive_credentials = service_account.Credentials.from_service_account_file(
json_url, scopes=SCOPES)
drive_service = build('drive', 'v3', credentials = drive_credentials)
results = drive_service.files().list(
q="mimeType='application/vnd.google-apps.folder'",
spaces='drive').execute()
results.files是一个空数组。
我不知道出什么问题了。如果我在这里https://developers.google.com/drive/api/v3/reference/files/list?apix_params=%7B%22q%22%3A%22mimeType%20%3D%20%27application%2Fvnd.google-apps.folder%27%22%7D尝试相同的查询,我会看到所有文件夹。
此外,如果删除查询,我可以看到所有文件,但看不到文件夹。
UPD。我发现除了“入门pdf”之外,它看不到其他文件。我只创建了几个测试文件,查询仍然只有一个结果。
答案 0 :(得分:0)
我发现了问题所在。即使范围提供了“完全访问权限”,但实际上却没有。只有在我允许自己的电子邮件允许后,它才能开始工作。
我做了什么:在Google云端硬盘界面中,我选择了文件夹,然后单击“共享”并输入来自凭据的电子邮件:xxx@yyy.iam.gserviceaccount.com
那很奇怪,但是有效。