我正在研究平均堆栈应用程序,我遇到了文件上传的一个问题。
我想在global.isProcessKilled
变量true
后立即停止所有上传。
我的代码如下:
photo.js
var express = require("express");
var app = express()
var router = express.Router();
var multer = require("multer");
var mongoose = require("mongoose");
var fs = require("fs");
var jwt = require("jsonwebtoken");
var lib = require("../../../config/lib");
var storage = multer.diskStorage({
destination: function(req, file, cb) {
cb(null, dirPath);
},
filename: function(req, file, cb) {
var datetimestamp = Date.now() + Math.floor(Math.random());
cb(null, datetimestamp + '.' + file.originalname.split('.')[file.originalname.split('.').length - 1].toLowerCase());
}
});
var photoUpload = multer({
storage: storage,
fileFilter : function (req, file, cb) {
if(global.isProcessKilled){ //my custom validation flag
// To reject this file pass `false`, like so:
cb(null, false);
}else{
// To accept the file pass `true`, like so:
cb(null, true);
}
}
});
router
.route("/api/photo/photoUpload")
.post(
photoUpload.array("file"),
function(req, res) {
.....
.....
....
});
通过此代码文件上传工作正常,但我的下一个原始API调用仅在处理当前(上一个)文件后发生。
更多信息: 所有选定的文件都超过1mb且小于10mb
global.isProcessKilled
变量为true
10个文件请帮我解决此问题。