文章目录
- 浏览器输入一个网址侯,具体发生什么?
- GET和POST请求的区别
- cookies机制和session机制的区别
- HTTP和HTTPS区别
- 什么是http无状态协议?怎么解决?
- 请求报文和响应报文
浏览器输入一个网址侯,具体发生什么?
1、进行DNS解析操作,根据DNS解析的结果找到服务器的IP地址
2、通过ip寻址和arp,找到服务器,并利用三次握手建立TCP连接
3、浏览器生成HTTP报文,发送HTTP请求,等待服务器响应
4、服务器处理请求,并返回给浏览器
5、根据HTTP是否开启长连接,进行TCP的挥手过程
6、浏览器根据收到的静态资源进行页面渲染
GET和POST请求的区别
get产生一个TCP数据包,post产生两个TCP数据包
get请求:浏览器会把htpp header和data一起发送出去,服务器响应200
post请求:浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok
cookies机制和session机制的区别
1、cookies数据保存在客户端,session数据保存在服务端
2、cookies可以减轻服务器压力,但是不安全,容易进行cookies欺骗
3、session较安全,但占用服务器资源
HTTP和HTTPS区别
http协议传输的数据都是未加密的,也就是明文的,因此非常不安全。
https协议是由ssl+http协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全。
1、https协议需要用到ca申请证书
2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议
3、http和https使用的是完全不同的连接方式,用的默认端口也是不一样 http80 https443
4、http的连接很简单,是无状态的;https协议是ssl+http协议构建的可进行加密传输、身份认证的网络协议,比http协议安全
什么是http无状态协议?怎么解决?
无状态协议对于事务处理没有记忆能力,缺少状态意味着如果后续处理需要前面的信息。
无状态协议解决方法:
1、通过cookie
2、通过session会话保存
请求报文和响应报文
1、请求报文
请求行:包含请求方式、url、http版本信息
请求头部字段headers
请求内容实体body
2、响应报文
状态行:包含http版本、状态码、状态码的原因短语
响应头部字段headers
响应内容实体body