multer 上传图片
时间: 2023-09-13 08:07:45 浏览: 162
Multer 是一个 node.js 中间件,用于处理 `multipart/form-data` 类型的表单数据,特别是用于上传文件。Multer 解决了上传文件时,处理数据流、存储文件等问题,非常方便。
以下是使用 Multer 上传图片的步骤:
1. 安装 Multer
```bash
npm install --save multer
```
2. 引入 Multer
```javascript
const multer = require('multer');
```
3. 配置 Multer
```javascript
const storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, 'uploads/') // 存储的目录
},
filename: function (req, file, cb) {
cb(null, Date.now() + '-' + file.originalname) // 重命名文件
}
});
const upload = multer({ storage: storage });
```
4. 创建上传路由
```javascript
const express = require('express');
const router = express.Router();
router.post('/upload', upload.single('image'), function(req, res) {
// 处理上传成功后的逻辑
res.send('Upload Success');
});
module.exports = router;
```
在这里,我们创建了一个路由,用于处理上传请求。其中 `upload.single('image')` 表示只上传单个文件,并且文件的字段名为 `image`。
5. 在前端页面中添加上传表单
```html
<form action="/upload" method="post" enctype="multipart/form-data">
<input type="file" name="image">
<button type="submit">上传</button>
</form>
```
在表单中,我们添加了一个文件上传框,用于选择要上传的图片。
以上就是使用 Multer 上传图片的基本步骤,可以根据具体需求进行更改和扩展。
阅读全文