为什么Google API V3无法返回子级? [英] Why Won't Google API V3 Return Children?
问题描述
我想使用Python获取Google云端硬盘中给定文件夹中所有文件/文件夹的列表.我正在使用的电话是这样:
I want to use Python to get a list of all the files/folders in a given folder in Google Drive. The call I'm using is this:
query = parentID + " in parents"
response = service.files().list(q=query,
spaces='drive',
fields='files(id, name, parents)').execute()
根据搜索文件文档和迁移到v3 文档,我应该做的正确.但是,当我运行代码时,出现以下错误:
According to the search for files documentation and the migrating to v3 documentation, I should be doing it correctly. But when I run the code, I get the following error:
<HttpError 400 when requesting https://www.googleapis.com/drive/v3/files?q=[MY_PARENT_ID]+in+parents&spaces=drive&alt=json&fields=files%28id%2C+name%2C+parents%29 returned "Invalid Value">
我的查询出了什么问题?我如何正确地称呼它?
What is wrong with my query and how would I call this correctly?
推荐答案
尝试了15个小时后,找到了以下解决方案:
After trying for some 15 hours, found this solution:
只需更改 query 变量,如下所示假设父ID为'0B_hg54vjh34v5jh23gv5i2v35th2gv35v235kjvk'
just change the query variable as follows suppose parent id is '0B_hg54vjh34v5jh23gv5i2v35th2gv35v235kjvk'
query="'0B_hg54vjh34v5jh23gv5i2v35th2gv35v235kjvk' in parents"
现在,它应该可以工作了.
now, it should work.
即使您将单引号和双引号互换,它也应该起作用..您正在将结果用于 query ="0B_hg54vjh34v5jh23gv5i2v35th2gv35v235kjvk(在父母中)使用
,而我们需要的是 query ="'0B_hg54vjh34v5jh23g'35在父母中"
it should work even if you interchange single and double quotes..what you were using results into query="0B_hg54vjh34v5jh23gv5i2v35th2gv35v235kjvk in parents"
while what we need is query="'0B_hg54vjh34v5jh23gv5i2v35th2gv35v235kjvk' in parents"
替代方法是:
parentId='0B_hg54vjh34v5jh23gv5i2v35th2gv35v235kjvk'
query="'" + "' in parents"
为什么会这样:-
如果您正确查看输出错误,它具有如下所示的http链接: https://www.googleapis.com/drive/v3/files?q=0B_hg54vjh34v5jh23gv5i2v35th2gv35v235kjvk+in+parents&spaces=drive&alt=json&fields=files%28id%2C+name%2C+parents%29
但所需的ID在ID周围加上单引号,如下所示: https://www.googleapis.com/drive/v3/files?q='0B_hg54vjh34v5jh23gv5i2v35th2gv35v235kjvk'+in+parents&spaces=drive&alt=json&fields=files%28id%2C+name%2C+%29
这篇关于为什么Google API V3无法返回子级?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!