get提交
在html中定义action提交地址为http://127.0.0.1:3000,提交方式method=“get”
定义表单服务器:
var http=require("http");
var url=require("url");
var server=http.createServer(function(req,res){
var query=url.parse(req.url,true).query; //参数true表示是否将结果传化为字符串
var name=query.name;
var age=query.age;
var sex=query.sex;
res.writeHead(200,{"Content-type":"text/html;charset=utf-8"});
res.write("name:"+name);
res.write(" age:"+age);
res.write(" sex:"+sex);
res.end("服务器响应结束");
})
server.listen(3000,"127.0.0.1");
post提交
在html中定义action提交地址为http://127.0.0.1:3000/mation,提交方式method=“post”
定义表单服务器:
var http=require("http");
var formidable=require("formidable");
var sd=require("silly-datetime");
var util=require("util");
var path=require("path");
var fs=require("fs");
http.createServer(function(req,res){
if(req.url=="/mation"&&req.method.toLowerCase()=="post"){
var str="";
var form=new formidable.IncomingForm();
form.uploadDir="./dir"; //定义表单数据存放位置
form.parse(req,function(err,fileds,files){ //fileds存放数据,files存放文件
util.inspect({fileds:fileds,files:files}); //将表单数据存放到对象中,转化为字符串
var time=sd.format(new Date(),"YYYYMMDDHHmmss");
var ran=Math.floor(Math.random()*89999)+10000;
var extname=path.extname(files.tupian.name); //path.extname获取文件后缀名
var oldpath=__dirname+"/"+files.tupian.path; //__dirname获取当前项目的物理路径
var newpath=__dirname+"/dir/"+time+ran+extname;
fs.rename(oldpath,newpath,function(err){ //将存入的文件改名
if(err){
throw Error("改名失败");
}
res.writeHead(200,{"Content-type":"text/html;charset=utf-8"});
res.end("成功");
})
})
}
}).listen(3000,"127.0.0.1");