问题描述:ueditor后台配置正常,启动后可以选择图片上传,但是上传总是失败,查看后台报错如下:
发现是后台无法获取post请求的body(打印出来为undefined),controller文件中正常引入body-parser。
controller代码:
=======================================================================================
请指点一下是因为什么原因导致,感激不尽。
PS:我是下载官网完整版文件包,自己修改的,然后引用ueditor for node包实现(菜鸟,不知道这样描述对不对请谅解)
经过查找资料发现问题所在:
因后台报错发生在'title': req.body.pictitle,这一句,且报错信息为: Cannot read property 'pictitle' of undefined。于是定位问题在图片上传过程POST数据获取失败,调试ueditor包:console.log(req.body)发现为undefined,所以确定问题点。
解决关键:
因express借助body-parser模块处理post请求中携带的数据,所以在controller中查看bodyparser设置问题,发现:
当前中间件在图片上传设置的中间件之后(因为是测试部署ueditor所以app.use("/ueditor",.....))的中间件设置代码是随意放置的,因此导致了图片上传失败。
解决方案:
将body-parser中间件放到ueditor图片上传设置的前面即可
希望对类似错误的朋友有帮助