Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 目标文件夹中上载的文件未存储在nodejs中_Javascript_Node.js_Multer - Fatal编程技术网

Javascript 目标文件夹中上载的文件未存储在nodejs中

Javascript 目标文件夹中上载的文件未存储在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:

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:(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有文件详细信息,但对我来说只是这样。有人请帮助实际上我在安装之后卸载了所有的东西,然后它就开始工作了