首页 > 解决方案 > Express-Fileupload 不解析heroku中的文件

问题描述

express-fileupload用来解析我的请求正文并访问随请求发送的任何文件。当我尝试在本地执行此操作时,这可以正常工作,但是当我将其推送到 heroku 时,文件没有被解析 -req.files而是null. 我的代码如下:

解析中间件:

var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
const fileUpload = require('express-fileupload');

module.exports = function (app) {
    app.use(cookieParser());
    app.use(bodyParser.json());
    app.use(bodyParser.urlencoded({ extended: true }));
    app.use(fileUpload());  // EXPRESS-FILEUPLOAD BEING USED HERE
};

路由文件:

router.post('/photo', function(req, res, next) {
    console.log("INSIDE OF THE ROUTE =======>>>>>");
    const userId = req.body.userId;
    const busketName = 'my-bucket-name';
    let newPhotosArray = [];
    var busboy = new Busboy({ headers: req.headers });
    req.pipe(busboy);

    busboy.on('finish', function() {
        const filesObj = req.files;
        console.log('FILES OBJ: ', filesObj);  // THIS IS LOGGED OUT AS NULL ON HEROKU - LOCALLY IT IS AN OBJECT WITH FILES

        // rest of code....
    });
});

当我在本地使用它时,代码效果很好。但是,当我将代码推送到 Heroku 时,req.files 为空。为什么是这样?

标签: javascriptexpressherokufile-uploadbody-parser

解决方案


推荐阅读