有四种创建新文件的方法:
它们都被称为服务。驱动器API被称为高级服务。那么,你应该用哪一个呢?我不知道,这要看情况。这个问题是关于驱动器API高级服务的。
我不想使用2或3的服务来完成工作。我只想用其中之一。但要决定使用哪一种,我需要知道它们的能力和选择。如果最简单、最简单的一个能做我想做的任何事情,那么我就用它。
如果我可以用DriveApp创建一个新文件,但是我需要使用DriveApp服务将我用DriveApp创建的文件移动到我想要的文件夹中,那么在特定情况下使用DriveApp是没有意义的。
我可以通过Google脚本.gs代码在Google中创建一个新文件,但是该文件会被写入主“main”。我想直接把文件写到子文件夹里。我目前的代码是:
var fileNameSetA = 'someFile.jpg';
var uploadedBlobA = an image uploaded with a file picker;
var fileTestDrive = {
title: fileNameSetA,
mimeType: 'image/jpeg'
};
fileTestDrive = Drive.Files.insert(fileTestDrive, uploadedBlobA);即使代码工作正常,我也不知道为什么语法是这样的,我也找不到说明原因的文档。我可以找到一个属性列表:
title:和mimeType:是作为Request Body的一部分的可选属性。从这个例子中,可选的属性显然放在一个键:value成对的对象中。语法也是如此:
Drive.Files.insert(optional properties, content);还需要下列查询参数:
uploadType -> media,multipart,resumable
但是在示例代码中,我没有看到指定任何必需的uploadType参数。所以,我不明白谷歌的文档。
是否可以使用服务直接在应用程序脚本.gs代码文件中写入特定驱动器?我该怎么做呢?
发布于 2015-04-20 20:42:37
通过这种方式,我能够使用DriveApp在指定的文件夹中创建文件。
var driveFolder = DriveApp.getFolderByName("MyDriveFolder");
var file = driveFolder.createFile(formObject.txtReceipt);
file.setName("MyFile"); PS: formObject.txtReceipt来自html中表单上的文件上传控件,这将返回一个blob。
https://stackoverflow.com/questions/24225398
复制相似问题