我想讓JavaScript代碼列出Google Drive根目錄中所有文件的名稱。僅供參考:我是JavaScript新手。Google Drive API children.list
對於第一個功能,我複製了https://developers.google.com/drive/v2/reference/children/list中的代碼。
接下來的兩個函數是我自己的代碼。我的結果只是一堆「[對象對象],[對象對象],[對象對象],[對象對象]」。此輸出與我在Google雲端硬盤根目錄中的文件數量相符。但是,我想要的文件名或ID的,但我似乎無法獲得除「[對象對象]」之外的任何東西。
我試着改變「resp.items」爲「resp.kind」或「resp.selflink」,但後來我只是得到「undefined」。任何人都知道如何獲得關於這些文件的任何特定信息?如果重要,範圍是「https://www.googleapis.com/auth/drive」。
function retrieveAllFilesInFolder(folderId, callback) {
var retrievePageOfChildren = function(request, result) {
request.execute(function(resp) {
result = result.concat(resp.items);
var nextPageToken = resp.nextPageToken;
if (nextPageToken) {
request = gapi.client.drive.children.list({
'folderId' : folderId,
'pageToken': nextPageToken
});
retrievePageOfChildren(request, result);
} else {
callback(result);
}
});
}
var initialRequest = gapi.client.drive.children.list({
'folderId' : folderId
});
retrievePageOfChildren(initialRequest, []);
}
function printToOutdiv (result){document.getElementById("outdiv").innerHTML=result;}
function GetFilesButton(){
gapi.client.load('drive', 'v2', function() {retrieveAllFilesInFolder('root',printToOutdiv);});
}
出於某種原因,我沒有成功的結果(0).id方法。但是,我在回調之前使用「resp.items [i] .id」嘗試了一個for循環,並得到了我所需要的。感謝您的幫助,Claudio。 – jeremydeanlakey 2013-02-27 16:27:27