1.异步函数使用
异步函数会放到程序的最后执行;通常用于一些比较耗费时间,耗费内存的代码。对于一些执行速度的代码不需要使用异步。
fs.existsSync 判断一个文件是否存在;结果是布尔型
2.HTTP协议
web服务器和浏览器之间通信所遵循的协议。
包含有 请求 和 响应
请求的方法:get 从服务器端获取内容(默认) post 向服务器发送内容(注册,登录...)
请求的状态码:
1**:正在响应,还没有结束
2**:成功响应
3**:响应重定向到其他的url
4**:客户端请求错误
5**:服务器端运行错误
3.http模块
构建web服务器
createServer() 创建web服务器
listen() 监听端口的变化
server.on('request',(req,res)=>{ //接收浏览器的请求
//req 请求的对象
//method 请求方法 url 请求的url headers 头信息
//res 响应的对象
//writeHead 响应的头信息
//write 设置响应到浏览器页面的内容
//end 结束响应
})
4.express框架
http模块本身有一些弊端
express是用于构建web服务器的框架
中文官网:http://www.expressjs.com.cn/
下载安装:npm install express
5.路由
http客户端发来消息,服务器端根据请求的不同的url,显示不同的内容
路由分为三部分:
请求的方法(get/post...) 请求的url (/login...) 响应的方法(回调函数)
请求对象(req):
req.url 请求的url
req.method 请求的方法
req.query 获取请求的url中查询字符串——返回一个对象
req.headers 获取请求的头信息
响应对象(res)
res.send() 发送一段文本到浏览器
res.sendFile() 发送一个文件到浏览器,文件使用绝对路径(__dirname)
res.redirect() 响应的重定向
练习:创建一个路由,请求的方法get,请求的url为reg,发送一个注册文件给浏览器
课后任务:
使用express构建web服务器,创建路由
get '/index' 发送文本“this is index page”
get '/shopping' 发送文件
get '/' 重定向到/index