Google apps script 将文件从web上载到Google Drive

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

我想在一个网站上使用谷歌API的形式,用户填写“姓名”,“电子邮件”和文件上传。我想把文件上传到我的谷歌硬盘上,它正在工作(遵循YT教程),但我需要从表单中创建一个名为“name”+“email”的新文件夹或名为“name”,并在此文件夹中创建一个包含“email”内容的文件

我尝试过这个,但我从未在.gs中做过任何事情,因此我不知道如何从
.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();
}