学习的原网页网址:https://www.cnblogs.com/chenliyang/p/6558756.html
1.js,运行在浏览器上的,有各大浏览器的兼容性问题,
解释型语言【程序运行才翻译,每次执行都翻译,效率低】
编译性语言【通过编译器将程序翻译成二进制,要通过编译才能运行,只能在依托的平台上运行】有差别,
2.nodejs 运行在服务器上的js语言,不存在兼容性问题。
express:第三方,安装好,直接引用,有路由和中间件构成的web框架。
http2.0:简单的请求-响应协议,它通常运行在TCP之上。客户端给服务端发消息,服务端做响应。
js与nodejs的相同点:都有自定义对象,宿主对象(bom ,dom),
3.http请求的理解:发送请求,返回数据的协议
(1)通用信息,
1.1 Request URL 请求url
1.2 request Method: 请求方法(get/post/put/delete/connect)
1.3 Status Code:响应状态码 (200/301/302/400/404/500)
(2)响应头信息
2.1 Connection:keep-alive/close
2.2 content-Type:文件类型
2.3 transfer-Encoding:chunk(分段传输)【请求头会被拆分去不同的地方,拿到消息再合并起来传回来,故名分段请求】
2.4 accept-encoding:接受压缩类型文件【gzip】
(3)请求头信息
3.1 accept:接受文件类型 html/text
3.2 accept-encoding:接受压缩类型文件 gzip
3.3 connection:连接方式 keep-alive
3.4 user-agent: 用户代理浏览器
起因:htt协议无状态的协议
所以:Cookies:(本地机器一小段文本)【去一趟服务器,服务器就返给客户端,就有cookie】
session: Session保存在服务器上,是针对每一个用户的,用一个sessionID来区分是哪个用户session变量, 【每个客户只要你来过服务端就存一个sessionID】