用express写写一个formdata的文件上传
时间: 2024-05-03 11:23:18 浏览: 13
这里是一个使用express框架实现formdata文件上传的示例:
1. 首先需要安装express和multer两个npm包。
```
npm install express multer --save
```
2. 在app.js文件中引入所需的包和模块:
```javascript
const express = require('express');
const multer = require('multer');
const app = express();
const upload = multer({ dest: 'uploads/' });
```
3. 定义一个上传文件的路由和处理函数:
```javascript
app.post('/upload', upload.single('file'), (req, res) => {
const file = req.file;
if (!file) {
const error = new Error('Please upload a file');
error.httpStatusCode = 400;
return next(error);
}
res.send('File uploaded successfully');
});
```
这里使用了multer的single方法,它会将单个文件上传到指定目录下,并将文件信息存储在req.file中。
4. 在客户端页面中添加一个表单:
```html
<form action="/upload" method="post" enctype="multipart/form-data">
<input type="file" name="file">
<button type="submit">Upload</button>
</form>
```
5. 启动应用并测试:
```javascript
app.listen(3000, () => {
console.log('Server started on port 3000');
});
```
现在,通过访问http://localhost:3000,选择文件并点击上传按钮,就可以将文件上传到服务器的uploads目录中了。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)