文件结构:
test.html内容
一定要在form中写入:enctype="multipart/form-data"不然传不了数据
一定要给type="file写入name
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>test</title>
</head>
<body>
<form action="http://127.0.0.1:3000/" method="post" enctype="multipart/form-data">
<input type="file" id="myFile" name="myFile">
<input type="submit" value="上传">
</form>
</body>
</html>
index的内容:
const express = require('express')
const multer = require('multer')
// const upload = multer({ dest: 'data/' })
const bodyParser = require('body-parser')
const app = express()
const storage = multer.diskStorage({
//destination确定存储位置
destination:function(req,file,cb){
cb(null,'data/')
},
//filename确定文件名称
filename:function(req,file,cb){
cb(null,file.originalname)
}
})
const upload = multer({storage:storage})
// 设置post请求
// myFile是<input type:'file'>的name
app.post('/', upload.single('myFile'), function (req, res, next) {
console.log(req.file)
res.send('ok')
})
app.listen(3000);
第21行的console.log(req.file)输出内容为(我选择的文件名称为:表.jpg,)
然后,就可以在data发现多了一个文件