【发布时间】:2020-09-30 07:12:08
【问题描述】:
美好的一天!
我正在尝试访问 Google 云端硬盘,并根据网络应用程序的个人资料编号获取特定的图像文件。例如,如果我在 web 应用程序上输入个人资料编号和详细信息,提交后,它将在 google sheet 上附加详细信息,我试图在 Google Drive 中搜索图像并将其 URL 放在最后一列。
这是我的html代码:
<body>
<!-- CONTAINER -->
<div class="container-md">
<!-- HEADING -->
<h3 style="color:green;">User Data</h3>
<!-- CONTENT -->
<div class="form-row">
<div class="form-group col-md-2">
<input id="rnum" class="form-control" type="text" placeholder="Profile Number" pattern="^\d{5}$" required>
</div>
</div>
<!-- FULL NAME -->
<div class="form-row">
<div class="form-group col-md-3">
<input id="fname" class="form-control" type="text" placeholder="First Name" required>
</div>
<div class="form-group col-md-3">
<input id="mname" class="form-control" type="text" placeholder="Middle Name" required>
</div>
<div class="form-group col-md-3">
<input id="lname" class="form-control" type="text" placeholder="Last Name" required>
</div>
</div> <!-- CLOSE ROW: FULL NAME-->
<div class="form-row">
<button id = "btn" type="submit" class="btn btn-primary">Submit</button>
</div>
</div> <!-- CLOSE CONTAINER -->
</body>
</html>
这是我的 javascript 代码:
<script>
document.getElementById("btn").addEventListener("click",submitBtn);
function submitBtn(){
var myInfo={};
myInfo.profile = document.getElementById("rnum").value;
myInfo.firstName = document.getElementById("fname").value;
myInfo.midName = document.getElementById("mname").value;
myInfo.lastName = document.getElementById("lname").value;
google.script.run.addInfo(myInfo);
document.getElementById("rnum").value = "";
document.getElementById("fname").value = "";
document.getElementById("mname").value = "";
document.getElementById("lname").value = "";
}
</script>
这是我的谷歌脚本代码:
function addInfo(myInfo){
const ss = SpreadsheetApp.openByUrl(url);
const ws = ss.getSheetByName("User_Info");
const imgFolder = DriveApp.getFoldersByName("User Image").next();
const imgIterator = imgFolder.getFiles();
var imgArr = [];
while(imgIterator.hasNext()){
var imgFile = imgIterator.next();
var imgUrl = imgFile.getName();
imgArr.push(imgUrl);
}
ws.appendRow([
myInfo.profile,
myInfo.firstName,
myInfo.midName,
myInfo.lastName
//Image URL
]);
}
到目前为止,我只能获取我的 Google Drive 文件夹中所有图像的文件名。我仍在寻找如何根据个人资料编号获取图像 URL 的方法。非常感谢您的帮助和意见。
【问题讨论】:
标签: javascript image google-apps-script google-sheets google-drive-api