express如何取得post文件
发布于 9 年前 作者 ZhangHang-z 6684 次浏览 最后一次编辑是 8 年前 来自 问答

查了半天, 要么是旧版本的方法, 要么第三方中间件不会用. 比如, 下面方法是3.x版本的,4.x版本中间件独立了,也没查到该怎么用.

 var express=require("express");
 var fs=require("fs");
 var app=express();
 app.use(express.bodyParser());
 app.get("/index.html", function (req,res) {
     res.sendfile(__dirname+"/1.html");
 });
 app.post("/index.html", function (req,res) {
     var file=req.files.myfile;
	 // 这里怎么也没看出来哪里是把文件放入系统的
     fs.readFile(file.path, function (err,data) {
         if(err) res.send("读文件操作失败");
         else{
             fs.writeFile(file.name,data, function (err) {
                 if(err) res.send("写文件操作失败.");
                 else res.send("文件上传成功");
             })
         }
     });

4.0版本该怎么用, req.files怎么都是Undefined

5 回复

要使用req.files,需要一个中间件,或第三方模块。

@youqingkui 上面那段代码中,好像没有哪里是有文本保存操作的, 这个是怎么运行的呢

既然4x版本把组件独立出来了,那么必须有alternatives哇,官方都给出来了呢。multipart/form-data用multer

回到顶部