Google apps script 将文件从web上载到Google Drive
我想在一个网站上使用谷歌API的形式,用户填写“姓名”,“电子邮件”和文件上传。我想把文件上传到我的谷歌硬盘上,它正在工作(遵循YT教程),但我需要从表单中创建一个名为“name”+“email”的新文件夹或名为“name”,并在此文件夹中创建一个包含“email”内容的文件 我尝试过这个,但我从未在.gs中做过任何事情,因此我不知道如何从Google apps script 将文件从web上载到Google Drive,google-apps-script,web-applications,Google Apps Script,Web Applications,我想在一个网站上使用谷歌API的形式,用户填写“姓名”,“电子邮件”和文件上传。我想把文件上传到我的谷歌硬盘上,它正在工作(遵循YT教程),但我需要从表单中创建一个名为“name”+“email”的新文件夹或名为“name”,并在此文件夹中创建一个包含“email”内容的文件 我尝试过这个,但我从未在.gs中做过任何事情,因此我不知道如何从.html 上传文件 内扎瓦兹纳·波普塔夫卡! document.getElementById('submitBtn')。addEventLis
.html
上传文件
内扎瓦兹纳·波普塔夫卡!
document.getElementById('submitBtn')。addEventListener('click',
职能(e){
google.script.run.withSuccessHandler(onSuccess).uploadFiles(this.parentNode)
})
函数onSuccess(数据){
document.getElementById('resp').innerHTML=“上传到路径的文件”+数据;
}
您可以保持
index.html
页面不变,只需对code.gs
进行少量编辑即可完成任务:
函数上传文件(数据){
var file=data.myFile;
var name=data.name;
var mail=data.mail;
var folder=DriveApp.getFolderById(“”);
folder.createFolder(名称+“+”+邮件);
var createFile=folder.createFile(文件);
返回createFile.getUrl();
}
或者,如果要将文件上载到新创建的文件夹,可以替换最后三行:
folder.createFolder(名称+“+”+邮件);
var createFile=folder.createFile(文件);
返回createFile.getUrl();
与:
var folderID=folder.createFolder(name++“+mail).getId();
var createFile=DriveApp.getFolderById(folderID).createFile(file);
返回createFile.getUrl();
这些信息对您的情况有用吗?您可以从上面的搜索中排除Google表单问题:@MultiSteelking无需担心,很高兴能为您提供帮助!如果答案合适,请接受左边的答案,以帮助丰富社区,并允许用户在将来遇到类似问题时找到解决方案。
function doGet() {
var html = HtmlService.createHtmlOutputFromFile('index');
return html.setXFrameOptionsMode(HtmlService.XFrameOptionsMode.ALLOWALL);
}
function uploadFiles(data)
{
var file = data.myFile;
var name = data.name;
var mail = data.mail;
var folder = DriveApp.getFolderById('1lnLlX-zB8n4JZyEDdq242hiw2jX4qZWH');
DriveApp.createFolder(name);
DriveApp.createFile(mail, mail);
var createFile = folder.createFile(file);
return createFile.getUrl();
}