我已经看了很多答案,但我还没有找到一个工作的解决方案.我试图制作一个网络应用程序,您可以上传文件到使用express和multer,我有一个问题,没有上传文件,req.file总是未定义.
我的代码如下
'use strict'; var express = require('express'); var path = require('path'); var multer = require('multer') var upload = multer({ dest: 'uploads/' }) var app = express(); require('dotenv').load(); app.use(express.static(path.join(__dirname,'main'))); app.post('/upload',upload.single('upl'),function (req,res,next) { // req.file is the `avatar` file // req.body will hold the text fields,if there were any console.log(req.file); res.status(204).end(); }) var port = process.env.PORT || 8080; app.listen(port,function () { console.log('Node.js listening on port ' + port + '...'); });
表格
<form class="uploadForm" action="/upload" method="post" enctype="multipart/formdata"> <label class="control-label">Select File</label> <input name="upl" id="input-1" type="file" class="file"> <input type="submit" value="submit" /> </form>
帮助非常感谢,这让我疯狂.
解决方法
您的enctype略有不正确,应该是multipart / form-data而不是multipart / formdata.
原文地址:https://www.jb51.cc/js/153843.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。