【发布时间】: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