form.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <form action="http://127.0.0.1:3000/" method="GET"> <input type="text" name="name" /> <br /> <input type="text" name="age" /> <br /> <input type="radio" name="sex" value="男"/> 男 <input type="radio" name="sex" value="女"/> 女 <br /> <input type="submit"> </form> </body> </html>
http.js
//这个案例简单讲解http模块 //引用模块 var http = require("http");//Object.require("http") //创建一个服务器,回调函数表示接收到请求之后做的事情 var server = http.createServer(function(req,res){ //req参数表示请求,res表示响应 console.log("服务器接收到了请求" + req.url); //设置头部 res.writeHead(200,{"Content-Type":"text/html;charset=UTF8"}); res.write("<h1>我是主标题</h1>"); res.write("<h2>我是2标题</h2>"); res.write("<h2>我是2标题</h2>"); res.write("<h2>我是2标题</h2>"); res.write("<h3>我是3标题</h3>"); res.end((1+2+3).toString()); }); //监听端口 server.listen(3000,"127.0.0.1");
req.js
var http = require("http"); var server = http.createServer(function(req,res){ console.log(req.url);// '/' res.end(); }); server.listen(3000,"127.0.0.1");
url.js
var http = require("http"); var url = require("url"); var server = http.createServer(function(req,res){ //url.parse()可以将一个完整的URL地址,分为很多部分: //host、port、pathname、path、query var pathname = url.parse(req.url).pathname; //url.parse()如果第二个参数是true,那么就可以将所有的查询变为对象 //就可以直接打点得到这个参数 var query = url.parse(req.url,true).query; //直接打点得到这个参数 var age = query.age; console.log("pathname:" + pathname);// '' console.log(query);//json格式 console.log("age:" + age); res.end(); }); server.listen(3000,"127.0.0.1");
url.js
var http = require("http"); var url = require("url"); var server = http.createServer(function(req,res){ //得到查询部分,由于写了true,那么就是一个对象 var queryObj = url.parse(req.url,true).query; var name = queryObj.name; var age = queryObj.age; var sex = queryObj.sex; res.end("服务器收到了表单请求" + name + age + sex); }); server.listen(3000,"127.0.0.1");
route.js
/* 当用户访问/student/1234567890 的查询此学号的学生信息。 当用户方位/teacher/645433 的时候,查询此老师的信息 其他的,我们提示错误。如果位数不对,也是提示位数不对 localhost:3000/student/1234567890 */ var http = require("http"); var server = http.createServer(function(req,res){ //得到url var userurl = req.url; res.writeHead(200,{"Content-Type":"text/html;charset=UTF8"}) //substr函数来判断此时的开头 if(userurl.substr(0,9) == "/student/"){ var studentid = userurl.substr(9); console.log(studentid); if(/^d{10}$/.test(studentid)){ res.end("您要查询学生信息,id为" + studentid); }else{ res.end("学生学号位数不对"); } }else if(userurl.substr(0,9) == "/teacher/"){ var teacherid = userurl.substr(9); if(/^d{6}$/.test(teacherid)){ res.end("您要查询老师信息,id为" + teacherid); }else{ res.end("老师学号位数不对"); } }else{ res.end("请检查url"); } }); server.listen(3000,"127.0.0.1");