上一篇是建立http服务器,建好后,我们接下来就要通过不同的url地址返回不同的数据,需要采用req.url来处理一下请求的路由地址
//使用模块时需要用require('模块名')
//引用http模块
var http = require('http');
var app = http.createServer(function(req, res){
// 如果不加处理就发送含中文字体的数据,在浏览器中会乱码
// 在服务端默认发送的数据,其实是 utf8 编码的内容,但是浏览器不知道你是 utf8 编码的内容
// 浏览器在不知道服务器响应内容的编码的情况下会按照当前操作系统的默认编码去解析
// 在 http 协议中,Content-Type 就是用来告知对方我给你发送的数据内容是什么类型
// res.setHeader('Content-Type', 'text/html; charset=utf-8')
res.setHeader('Content-Type', 'text/html; charset=utf-8')
// req.url 获取到的是端口号之后的那一部分路径也就是说所有的 url 都是以 / 开头的
var URL = req.url; //定义URL为请求路径
//当URL不同时返回不同页面
if(URL === "/"){
// res.write('hello!欢迎来到首页')
// res.end()
// 上面的方式比较麻烦,推荐使用更简单的方式,直接 end 的同时发送响应数据
// res.end('hello!欢迎来到首页') 在响应结束同时发送数据
res.end("hello!欢迎来到首页")
} else if(URL === "/page1"){
res.end("这里是召唤师峡谷")
} else if(URL === "/page2"){
res.end("这里是王者峡谷")
} else{
res.end("404 ! 恭喜恭喜,峡谷不见了") //404 没有url地址时返回
}
})
app.listen(3000, function(){
console.log("服务器启动成功,浏览器地址:http://127.0.0.1:3000/")
})
以下是效果图