1.在Node中专门提供了一个核心模块:http,http这个模块的职责就是帮你创建服务器
2.搭建服务器的简单步骤
1)加载http核心模块
2)使用http.createServer方法创建一个Web服务器,此方法会返回一个server实例
3)注册request请求事件,当客户端请求过来,就会自动触发服务器的request请求事件,然后执行第二个参数:回调处理函数
4)绑定端口号,启动服务器
response对象的write方法可以用来给客户端发送响应数据,最后一定要使用end来结束响应,否则客户端会一直等待
//在Node中专门提供了一个核心模块:http,http这个模块的职责就是帮你创建服务器
//1.加载http核心模块
let http=require('http')
//2.使用http.createServer方法创建一个Web服务器,此方法会返回一个server实例
let server=http.createServer()
//3.注册request请求事件,当客户端请求过来,就会自动触发服务器的request请求事件,然后执行第二个参数:回调处理函数
server.on('request',function(request,response){
console.log('收到客户端的请求了,请求路径是:'+request.url)
//response对象的write方法可以用来给客户端发送响应数据,最后一定要使用end来结束响应,否则客户端会一直等待
response.write('lbw')
response.write('nb')
response.end()
})
//4.绑定端口号,启动服务器
server.listen(3333,function(){
console.log('服务器启动成功了,可以通过http://127.0.0.1:3333/来进行访问')
})
//服务器的作用:
//提供对数据的服务,发送请求,接收请求,处理请求,发送响应
3.服务器的作用:提供对数据的服务,发送请求,接收请求,处理请求,发送响应
4.接下来根据前端发送的不同url来发起响应
1)获取请求路径
request.url获取到的是端口号之后的那一部分路径,也就是说所有的url都是以/开头的
2)判断路径处理响应
需要注意的一点是后台只能发送字符串或者二进制编码,所以当有数组或者其他数据类型需要发送的时候需要调用JSON.stringify方法来完成转换
let http=require('http')
let server=http.createServer()
server.on('request',function(request,response){
console.log('收到客户端的请求了,请求路径是:'+request.url)
let url=request.url
if(url==='/'){
response.end('index')
}else if(url==="/project"){
let project=[
{
name:'tbw',
speed:40
},
{
name:'rose',
speed:100
},
{
name:'ai',
speed:120
}
]
response.end(JSON.stringify(project))
}else{
response.end('404 NOT FOUND')
}
})
server.listen(3333,function(){
console.log('服务器启动成功了,可以通过http://127.0.0.1:3333/来进行访问')
})