Javascript 目标文件夹中上载的文件未存储在nodejs中
controller.jsJavascript 目标文件夹中上载的文件未存储在nodejs中,javascript,node.js,multer,Javascript,Node.js,Multer,controller.js var multer = require('multer'); var upload = (req, res) => { var doc = req.files.file; var storage = multer.diskStorage({ destination:(req,files, cb)=> { cb(null, '/uploads') }, filename:
var multer = require('multer');
var upload = (req, res) => {
var doc = req.files.file;
var storage = multer.diskStorage({
destination:(req,files, cb)=> {
cb(null, '/uploads')
},
filename:(req,files, cb) => {
var datetimestamp = Date.now();
cb(null, uploadDoc.originalname);
}
})
var upload = multer({
storage: multer.memoryStorage()
}).single('file')
upload(req, res, function (err) {
if(err) {
res.json({ error_code: 1, err_desc: err });
return;
}
res.json({'msg': 'File uploaded successfully!', 'file': req.files.file});
});
};
module.exports={ upload:upload}
路由器.js
var express =require("express");
var Router = express.Router();
var Controller = require('../Controllers/Ucontrollers');
Router.route('/upload/file').post(Controller.mediaUpload);
module.exports =Router;
在《邮递员》中显示结果:
{
"msg": "File uploaded successfully!",
"file": {
"fieldName": "file",
"originalFilename": "doc.pdf",
"path": "C:\\Users\\DELL\\AppData\\Local\\Temp\\zwruODmEBT-iWFT0_zDJt8-y.pdf",
"headers": {
"content-disposition": "form-data; name=\"file\"; filename=\"doc.pdf\"",
"content-type": "application/pdf"
},
"size": 292202,
"name": "doc.pdf",
"type": "application/pdf"
}
}
但是,在目标文件夹中,文档中没有任何内容。在邮递员中,成功获取结果,但在上载文件夹中未存储
我尝试了所有方法,但文档未存储在目标中。我在此处犯了错误。从响应中,您可以理解该文件存储在临时文件夹中
{
"msg": "File uploaded successfully!",
"file": {
"fieldName": "file",
"originalFilename": "doc.pdf",
"path": "C:\\Users\\DELL\\AppData\\Local\\Temp\\zwruODmEBT-iWFT0_zDJt8-y.pdf",
"headers": {
"content-disposition": "form-data; name=\"file\"; filename=\"doc.pdf\"",
"content-type": "application/pdf"
},
"size": 292202,
"name": "doc.pdf",
"type": "application/pdf"
}
}
问题是,您没有使用磁盘存储。只需在controller.js
var upload = multer({
storage: storage
}).single('file')
你试过调试这个问题吗?dubuging时我没有出错,你试过什么?调试代码不是关于读取错误消息,而是关于执行。好的。我在这段代码中犯了什么错误?我不知道,但调试会显示出这一点。你为什么不一步一步地检查代码,看看哪里发生了什么?在回答中的评论之后,你确定文件没有存储在给定的路径上吗?如果目标文件夹不在那里,那么它将只存储在临时文件夹中。但是,我也创建了目标文件夹。这一个也不起作用。为什么文件没有存储在指定的路径中,还有一个问题是req.files有文件详细信息,但对我来说只是这样。有人请帮助实际上我在安装之后卸载了所有的东西,然后它就开始工作了