CNode

express如何取得post文件

问答
ZZhangHang-z发布于11 年前最后回复11 年前5 回复7158 浏览0 收藏

查了半天, 要么是旧版本的方法, 要么第三方中间件不会用. 比如, 下面方法是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)

Y
youqingkui#1·11 年前

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

Z
ZhangHang-z#2·11 年前
引用 youqingkui要使用req.files,需要一个中间件,或第三方模块。

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

A
alsotang#4·11 年前

3L 靠谱 @youqingkui

D
DevinXian#5·11 年前

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

参与回复
登录后即可参与回复。登录