nodejs简简单单做一个文件夹上传功能

2024年03月30日 建站教程

如何利用nodejs语法实现一个文件夹上传功能,下面web建站小编给大家简单介绍一下具体实现代码!

第一步,创建表单

<form action="/uploadFolder" method="POST" enctype="multipart/form-data">
  <input type="file" name="folder[]" multiple webkitdirectory directory>
  <input type="submit" value="上传">
</form>

第二步,创建路由

const express = require("express");
const multer = require("multer");
 
const app = express();
const upload = multer({ dest: "uploads/" });
 
app.post("/uploadFolder", upload.any(), (req, res) => {
  console.log(req.files);
  res.send("上传成功");
});
 
app.listen(3000, () => {
  console.log("应用程序已启动");
});

第三步,处理上传的文件

const fs = require("fs");
 
const files = req.files;
for (let i = 0; i < files.length; i++) {
  const file = files[i];
  const filePath = file.path;
  const originalName = file.originalname;
  const fileName = originalName.replace(/[^a-z0-9]/gi, "_").toLowerCase();
  const destPath = "uploads/" + fileName;
  try {
    fs.renameSync(filePath, destPath);
  } catch (err) {
    res.status(500).send('文件上传失败');
  }
}
res.send("上传成功");

最后,启动应用程序命令

node app.js

本文链接:http://so.lmcjl.com/news/720/

展开阅读全文