安装:
npm install -g express
npm install -g body-parser //获取post参数
npm install -g cookie-parser
npm install -g multer //文件上传支持
测试代码如下:
var express = require("express");
var bodyParser = require("body-parser");
var fs = require("fs");
var app = express();
var multer = require("multer");
app.use(express.static("public"));
// 创建 application/x-www-form-urlencoded 编码解析
var urlencodedParser = bodyParser.urlencoded({ extended: false })
app.use(bodyParser.urlencoded({ extended: false }));
app.use(multer({ dest: '/tmp/'}).array('image'));
app.get("/", function(req, res){
res.end("hello world");
});
app.get("/hello", function(req, res){
res.end("hello webpage");
});
app.get("/index.htm", function(req, res){
res.sendFile(__dirname + "/public/" + "index.htm");
});
app.get("/index_post.htm", function(req, res){
res.sendFile(__dirname + "/public/" + "index_post.htm");
});
app.get("/process_get", function(req, res){
var param={
"first_name" : req.query.first_name,
"last_name" : req.query.last_name
};
res.end(JSON.stringify(param));
});
app.post("/process_post", urlencodedParser, function(req, res){
var param={
"first_name" : req.body.first_name,
"last_name" : req.body.last_name
};
res.end(JSON.stringify(param));
});
app.get("/fileupload.htm", function(req, res){
res.sendFile(__dirname + "/public/" + "fileupload.htm");
});
app.post("/file_upload", function(req, res){
console.log(req.files[0]);
var des_file = __dirname + "/public/upload/" + req.files[0].originalname;
fs.readFile(req.files[0].path, function(err, data){
fs.writeFile(des_file, data, function(err){
if(err){
console.log(err);
}else{
response = {
message:"file uploaded successfull",
filename:req.files[0].originalname
};
console.log(response);
res.end(JSON.stringify(response));
}
});
});
});
var server = app.listen(8008, function(){
var host = server.address().address;
var port = server.address().port;
console.log("应用实例,访问地址为 http://%s:%s", host, port);
});
index.htm
<html>
<body>
<form action="process_get" method="GET">
First Name: <input type="text" name="first_name" /><br />
Last Name: <input type="text" name="last_name" /><br />
<input type="submit" value="submit" />
</form>
</body>
</html>
index_post.htm
<html>
<body>
<form action="process_post" method="POST">
First Name: <input type="text" name="first_name" /><br />
Last Name: <input type="text" name="last_name" /><br />
<input type="submit" value="submit" />
</form>
</body>
</html>
fileupload.htm
<html>
<body>
<form action="/file_upload" method="POST" enctype="multipart/form-data">
<input type="file" name="image" size="50"/> <br />
<input type="submit" value="上传文件" />
</form>
</body>
</html>