使用Node.js开发一个文件上传功能
以下是一个使用Node.js和Express框架实现的简单文件上传功能的示例代码:
首先,确保安装了express
和multer
包:
npm install express multer
然后,创建一个简单的Express服务器,并配置multer
以处理上传的文件:
const express = require('express');
const multer = require('multer');
const app = express();
// 设置存储配置
const storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, 'uploads/') // 确保这个文件夹已经存在
},
filename: function (req, file, cb) {
cb(null, file.fieldname + '-' + Date.now())
}
})
const upload = multer({ storage: storage })
// 处理上传的文件
app.post('/upload', upload.single('myFile'), (req, res) => {
const file = req.file;
if (!file) {
return res.status(400).send('No file uploaded.');
}
res.send('File uploaded successfully.');
});
const PORT = 3000;
app.listen(PORT, () => {
console.log(`Server is running on port ${PORT}`);
});
在HTML表单中,你需要设置enctype="multipart/form-data"
以便正确上传文件:
<form action="http://localhost:3000/upload" method="post" enctype="multipart/form-data">
<input type="file" name="myFile">
<input type="submit" value="Upload File">
</form>
这个简单的示例展示了如何使用Node.js和Express框架来处理文件上传。记得在实际应用中,你可能需要添加更多的错误处理和安全性措施。
评论已关闭