javascript - 当没有响应时,如何避免在 node.js / express / multer 中重新提交表单?
问题描述
我有一个问题,有时我的表单(通过 Node.Js 应用程序以标准方式提交)需要很长时间才能处理。
在后端 (app.js) 上,逻辑如下所示:
var multer = require('multer')
var storage = multer.diskStorage({
destination: function(req, file, cb) {
cb(null, './temp')
},
filename: function(req, file, cb) {
cb(null, file.originalname)
},
})
var upload = multer({
storage: storage
})
app.post(
'/import',
upload.array('uploadedFiles', 50),
imports.submit
)
那么接下来会发生 POST 请求再次发生(可能在没有收到任何响应之后)并且文件被重新提交。我的日志显示/POST --/--
。
我怎样才能避免发生这种情况?
我尝试使用以下代码:
$('#submitform').on('submit', function(e){
e.preventDefault();
$(this).find('input[type=submit]').attr('disabled', 'disabled');
$('#message').html('Importing the data');
$("#submitform").unbind('submit').submit()
});
但它根本不提交表单。
我该如何解决这个问题?
我不能使用 AJAX 作为从 node.js 应用程序获得的响应,因为我必须重写太多后端。
解决方案
推荐阅读
- mysql - MySQL 贷款、支付和客户
- .net - .NET Core:如何为 SSL 打印 sed 证书的名称?
- typescript - 在二叉搜索树中查找左右高度
- sapui5 - 如何在同一个项目中使用 OpenUI5 自定义主题?
- php - CSRF 保护在 Laravel + Sanctum rest api 中不起作用
- node.js - 删除/裁剪 pdf 文档的边距 | 节点/Javascript
- python - 模拟高斯分数噪声
- vue.js - Vue 收到了一个组件,它是一个响应式对象
- python - 仅从 json 文件中提取 id 并将它们读入 csv
- macos - 禁用 cmd-R 以在 Mac 上的 Google Apps 脚本编辑器中执行脚本