我有一个WebApp,其中包含文件的上传表单,然后存储在Google云端硬盘中。该应用程序主要用于传输图像和PDF文件。
最近,一位用户报告该应用程序因特定PDF文件而失败。此文件是72MB的PDF。它是通过将7-8个其他PDF文件组合在一起而创建的。当每个单独的文件逐个上传时,该应用程序可以正常工作,但在提交组合PDF(72MB)时无效。
我在应用程序上尝试使用相关文件。该应用程序在到达句子时会抛出错误:
google.script.run
出现错误弹出窗口:" NetworkError:由于HTTP 500" 导致连接失败。错误显得非常快,我只需要等待1-2秒。所以我在这里放弃了超时情况。
在服务器端脚本中,我有几个Logger.log()调用,但我没有得到任何一个(当按 Ctrl + Enter 尝试上传后)。 我只看到加载表单iteself时注册的调试日志(我为doGet()添加的日志),但是没有完成upload()函数的日志,在点击页面上的上传按钮后调用。似乎google.script.run句子甚至在到达服务器端代码的第一行之前就失败了。我通过注释掉所有服务器端上传代码并仅留下Logger.log()调用来确认这一点。
这是我的应用源代码:
HTML表单:
<form id="form1" method="POST" class="form" enctype="multipart/form-data">
<input type="file" id="inputFile" name="inputFile" />
<input type="button" value="Upload File" onclick="upload(this);">
</form>
<script>
function upload(fileUploadInput) {
if (validateUploadForm(fileUploadInput.form)) {
console.log("Launching upload..");
google.script.run
.withSuccessHandler(uploadFileSuccessHandler)
.withFailureHandler(uploadFileFailureHandler)
.uploadFile(fileUploadInput.form);
return false;
}
}
</script>
服务器端脚本:
function uploadFile(form) {
Logger.log("Entering uploadFile()");
/*
Commentted code starts here... but it doesn't even reach the previous line!
Throws "NetworkError: Connection failure due to HTTP 500" on a popup
at the page before logging anything.
*/
}
任何帮助将不胜感激。提前谢谢!