穆特未按要求创建文件

时间:2018-12-12 07:27:33

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

我对路由器进行了以下设置,而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());

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

enter image description here

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

1 个答案:

答案 0 :(得分:0)

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