Node模块-HTTP服务

本节主要讲述Node模块-HTTP服务

HTTP服务

创建HTTP服务器

createServer

1
2
3
4
5
6
7
8
9
var http=require('http');

var server = http.createServer(function(req,res){
res.writeHead(200,{'Content-Type':'text/plain'});

res.end("Hello Node!");
})

server.listen(3000);

上面的代码,使用createServer方法创建一个简单的HTTP服务器,该方法返回一个http.server的类的实例,

crateServer方法包含一个匿名的回调函数,该函数有两个参数req和res,他们是InComingMessage和ServerResponse的实例。

分别表示HTTP的request和response对象,服务器创建后,Node进程开始循环监听3000端口

监听来自客户端的事件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var http=require('http');

var server = http.createServer(function(req,res){
res.writeHead(200,{'Content-Type':'text/plain'});

res.end("Hello Node!");
})

server.on("connection",function(req,res){
console.log("connected")
})

server.on("request",function(req,res){
console.log("request")
})

server.listen(3001);

实战:静态文件服务器

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var http=require('http');
var fs=require('fs');

var server = http.createServer(function(req,res){
if(req.url=='/'){
var fileList = fs.readdirSync('./');

res.writeHead(200,{"Content-Type":"text/plain"});

res.end(fileList.toString())
}
})


server.listen(3002);