我正在尝试通过ID来获取文件或文件夹的路径。
我知道父母就像标签一样,但在PC上使用Google云端硬盘却并非如此:它们始终是其分层结构中的文件夹和文件。
所以我尝试以下代码:
function getPath( fileId ) {
path = ""
names = [];
while ( id != '0AN9ZF6qdu2FUUk9PVA' ){ //the right string is the root id
get_metadata( id )
.then( function(response){
if( response.result.parents )
names.push( response.result.name )
id = response.result.parents[0];
})
}
path = names.reverse.join('/');
return path;
}
它不起作用。请帮助我。
答案 0 :(得分:0)
不起作用的最可能原因是您未能处理JavaScript的异步特性。您的语句将执行类似以下内容:-
get_metadata
get_metadata
get_metadata
get_metadata
get_metadata
get_metadata
get_metadata
get_metadata
names.push
get_metadata
get_metadata
names.push
第二,您的函数参数为fileId
,但函数主体中从未使用过它。相反,您使用的是id
。
值得一看的是How do I search sub-folders and sub-sub-folders in Google Drive?的选项3,这意味着您可以在一个GDrive API调用中完成您想做的事情。
因此,以世界上最好的状态,您需要进行很多JavaScript学习。