这似乎是一个简单的问题,但我已经花了一段时间试图解决它,我无法弄清楚什么是错的。这是我提出请求的前端表单:
div#PreGA
p PreGa.json:
form(action="config/set/PreGa", name="pre-ga", method="post", enctype="multipart/form-data")
input(type="file" value="Choose File" accept=".json")#choose-file-pre-ga
input(type="submit" value="Upload")#upload-pre-ga
这是应该收到请求的路由:
var upload = multer({ dest: 'uploads/' });
//set the JSON file for the pre-ga reported issues
router.post('/config/set/PreGa',ensureAuthenticated, upload.single('pre-ga'), function(req, res, next) {
console.log(req.body);
console.log(req.file);
});
问题是当调用路由时,req.file(应返回文件)是未定义的。
这是最简单的用例之一,我无法弄清楚出了什么问题。非常感谢一些帮助。
答案 0 :(得分:1)
您的文件输入缺少name
属性。