// 加载http核心模块
var http = require('http')
var fs = require('fs')
// 使用http.createServer()创建一个服务器
// 注:该api会返回一个实例,所以要开一个变量来接收
var server = http.createServer()
// 当客户端请求过来,就会触发node的request请求事件,然后回调函数
// 回调函数有2个参数
// request: 请求对象
// 说明: 请求对象可以用来获取客户端的一些请求信息,例如请求路径
// response: 响应对象
// 说明: 响应对象可以用来给客户端发送响应信息
server.on('request', function(request, response) {
// request.url是客户端当前请求的路径
console.log(request.url)
// response对象有一个方法:write可以给客户端发送响应数据
// write可以响应多次,但是最后一定要使用end来结束响应,否则客户端会一直等待
// 匹配当前用户请求的路径与服务器是否一致
fs.readFile('.' + request.url,function (error, data) {
// 如果一致
if (data) {
// 输出用户打开路径的文件内容,并且展示出来
response.write(data.toString())
// end结束
response.end()
} else {
response.end('404没有该页面哦')
}
})
console.log('收到用户请求了')
})
// 启动服务器,绑定端口号
server.listen(3000, function () {
console.log('服务器启动成功了,可以通过 http: //127.0.0.1:3000来进行访问')
})