NodeJS——http模块创建最简单的服务器
#http模块创建服务器 在nodejs的http模块中,http既可以创建服务器,也可以模拟浏览器向其他服务器发送请求 1、模拟浏览器 http.get(url,callback) 向服务器发请求 url 请求的url callback 回调函数,获取服务器端的响应 res x响应的对象 res.statusCode 获取响应的状态码 res.on(‘data’,function(chunk){ }) 监听服务器是否有数据传输 chunk:就是传输的数据,格式为buffer
//引入http模块
const http=require(http);
//向其他服务器发请求
//使用回调函数来获取响应
http.get(http://www.tmooc.cn,function(res){
//res:响应的对象
//console.log(res.statusCode);状态码
//获取响应的数据
//监听是否有数据传递
res.on(data,function(chunk){
console.log(chunk.toString());
});
2、创建服务器
var app=http.createServer(); //创建web服务器
app.listen(8080); //设置监听的端口
//监听浏览器的请求
app.on(request,function(req,res){
//req:请求的对象
req.url 请求的url,端口号后的部分,表示要获取的内容
req.method 请求的方法
//res:响应的对象
res.writeHead(状态码,头信息对象) 设置响应的状态码和头信息
res.write() 设置响应的内容
res.end() 结束并发送响应
});
例子:创建web服务器,监听端口8080,接收浏览器的请求,根据请求作出响应 /list 响应内容 ‘this is product list’ /index 响应内容 ‘this is homepage’ / 跳转到 /index /study 跳转到 http; 其他 响应状态 404 内容 not found
//引入http模块
const http=require(http);
//创建web服务器
var app=http.createServer();
//设置监听端口,监听浏览器的请求
app.listen(8080);
//事件:接收请求,监听请求
app.on(request,function(req,res){
if(req.url==/list){
res.wirte(this is product list);
res.end();
}else if(req.url==/index){
res.write(this is homepage);
res.end();
}else if(req.url==/){
res.writeHead(302,{
Location:http://localhost:8080/index})
res.end();
}else if(req.url==/study){
res.writeHead(302,{
Location:http://baidu.com})
res.end();
}
});
下一篇:
centos7如何在桌面打开终端
