我正在使用NodeJS express(MVC),我正在尝试上传图像 . 我试图将图像存储在uploads文件夹中,但没有任何显示 . 当我在console.log(req.files)时,我得到以下内容(req.buffer打印出一长串的双位数字和字母) . 如何将此图像保存到文件夹中?
[{fieldname:'file',originalname:'thumbnail.jpg',encoding:'7bit',mimetype:'image / jpeg',buffer:,size:1347}]
HTML:
<form action =“/ bars / upload”method ='post'enctype =“multipart / form-data”>
<label for ='file'>上传图片</ label>
<input type =“file”name =“file”accept =“image / *”/>
<input type =“submit”name ='submit'value =“submit”/>
</ FORM>
NODE JS
var multer = require('multer'); var upload = multer({dest:'../ public / uploads /'}); router.post('/ bars / upload',function(req,res,next){console.log(req.files); res.send(req.files);});
3 回答
multer
基本上是一个上传文件或转换为某种格式的中间件,可以在以后的处理程序中使用 . 所以,从examples开始,你可以在你的情况下这样做:upload.html
如果这不起作用,您可以使用命令行进行调试,这通常可以帮助我确定服务器或客户端是否有故障 .
添加
-I
选项以显示详细响应 .我有同样的问题 . 我使用Postman对我的节点应用程序进行查询 . 当我删除http标头Content-Type(它被设置为urlencoded格式)时问题解决了 .
我在dest中遇到了同样的问题:'../ public / uploads /'只需删除../并将其写成这样的目标:'public / uploads /'就是这样的