【问题标题】:Multer not creating file on requestMulter 未按要求创建文件
【发布时间】:2019-05-13 06:17:13
【问题描述】:

我为路由器设置了以下设置,但 multer 中间件没有根据请求创建文件,所以

请求文件

总是未定义的。

    const multer = require('multer');

let storage = multer.memoryStorage();

function fileFilter (req, file, cb) {
    if(file.mimetype === 'image/jpeg' || file.mimetype === 'image/png'){
        cb(null,true);
        return;
    }
    cb(new Error('wrong file type:not PNG or JPEG'),false);
}

const upload = multer({
    storage : storage,
    fileFilter : fileFilter
});

this.getServer().post('/vendor/profile/logo',upload.single('imageFile'),jwt,(req, res) => {
                this.addCompanyLogo(req).then(user => {
                    res.status(200).send(user);
                }).catch(err => {
                    console.log(err);
                    res.status(err.status).send(err.error);
                });
            });

我在应用程序级别也有 bodyparser。

 server = express();
        server.use(bodyParser.json());
        server.use(bodyParser.urlencoded({ extended: true }));
        server.use(cors());

我正在使用邮递员提出请求:

到目前为止,没有任何效果。我尝试删除 bodyparser 认为这是问题所在,但没有奏效。尝试重新排序中间件,但也没有用。

【问题讨论】:

    标签: javascript node.js express multer body-parser


    【解决方案1】:

    问题原来与我的本地文件路径有关,其中包含邮递员不支持的字符,例如 ö。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-19
      • 2023-03-28
      • 2020-06-25
      • 2012-06-17
      • 2020-04-29
      • 2019-04-19
      • 2020-06-19
      • 1970-01-01
      相关资源
      最近更新 更多