使用此代码,我可以创建文件夹。
function createNewFolder() {
var name = "newfolder"
gapi.client.load('drive', 'v2', function() {
var request = gapi.client.request({
'path': '/drive/v2/files/',
'method': 'POST',
'headers': {
'Content-Type': 'application/json',
},
'body':{
"title" : name,
"mimeType" : "application/vnd.google-apps.folder",
"parents": [{
"kind": "drive#file",
"id": FOLDER_ID
}]
}
});
request.execute(function(resp) { console.log(resp); });
});
}
}
}
但是当创建它时,我想在其中创建5个具有不同名称(苹果,梨,香蕉,猕猴桃和橙色)的子文件夹。
答案 0 :(得分:0)
将代码的开头更改为:
function createNewFolder(folderName) {
var name = folderName
通过为函数提供一个参数,您可以使用不同的名称多次执行它,这样您就可以遍历一个数组(例如)并创建它们:
var names = ['apple', 'pear', 'something']
for (var i = 0; i < names.length; i++) {
createNewFolder(names[i]);
}
答案 1 :(得分:0)
使用parents[]
属性获取FOLDER_ID
时,您的代码是正确的。然后,您可以使用FOLDER_ID
在父文件夹中创建子文件夹。在documentation中说明了这一点。
创建文件夹时也可以使用
parents
属性来创建子文件夹。
function createSubFolder() { var body = new Object(); body.title = 'SubFolder'; body.parents = [{'id':'0B5xvxYkWPFpCUjJtZVZiMWNBQlE'}]; body.mimeType = "application/vnd.google-apps.folder"; console.log(body) var request = gapi.client.request({ 'path': '/drive/v2/files', 'method': 'POST', 'body': JSON.stringify(body) }); request.execute(function(resp) { console.log(resp); }); }
另外根据此SO thread,在Google云端硬盘中创建子文件夹时,它必须有父级。因此,在执行字符串q
之前,您需要搜索父根ID。
string findRootId = "mimeType = 'application/vnd.google-apps.folder' and title ='" + RootFolder + "' and trashed = false";
IList<File> _RootId = GoogleDriveHelper.GetFiles(service, findRootId);
if (_RootId.Count == 0)
{
_RootId.Add(GoogleDriveHelper.createDirectory(service, RootFolder, "", "root"));
Console.WriteLine("Root folder {0} was created.", RootFolder);
}
var id = _RootId[0].Id;
string Q = "mimeType = 'application/vnd.google-apps.folder' and '" + id + "' in parents and title ='" + GoogleDriveFolderName + "' and trashed = false";
希望这有帮助!