计算机网络的基础知识

GET 和 POST 的区别
1,get是获取数据,post是修改数据。
2,get把请求的数据放在url上, 以?分割URL和传输数据,参数之间以&相连,所以get不太安全。而post把数据放在HTTP的包体内(requrest body)。
3,get提交的数据最大是2k( 限制实际上取决于浏览器), post理论上没有限制。
4,GET产生一个TCP数据包,浏览器会把http header和data一并发送出去,服务器响应200(返回数据); POST产生两个TCP数据包,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)。
5,GET请求会被浏览器主动缓存,而POST不会,除非手动设置。
6,GET是幂等的,而POST不是幂等的。

Cookies和session区别
Cookie和Session都是客户端与服务器之间保持状态的解决方案
1,存储的位置不同
cookie:存放在客户端,session:存放在服务端。Session存储的数据比较安全
2,存储的数据类型不同
两者都是key-value的结构,但针对value的类型是有差异的
cookie:value只能是字符串类型,session:value是Object类型
3,存储的数据大小限制不同
cookie:大小受浏览器的限制,很多是是4K的大小, session:理论上受当前内存的限制,
4,生命周期的控制
cookie的生命周期当浏览器关闭的时候,就消亡了
(1)cookie的生命周期是累计的,从创建时,就开始计时,20分钟后,cookie生命周期结束,
(2)session的生命周期是间隔的,从创建时,开始计时如在20分钟,没有访问session,那么session生命周期被销毁

session 的工作原理?
session 的工作原理是客户端登录完成之后,服务器会创建对应的 session,session 创建完之后,会把 session 的 id 发送给客户端,客户端再存储到浏览器中。这样客户端每次访问服务器时,都会带着 sessionid,服务器拿到 sessionid 之后,在内存找到与之对应的 session 这样就可以正常工作了。

一次完整的HTTP请求过程
域名解析(递归查询、迭代查询) --> 发起TCP的3次握手 --> 建立TCP连接后发起http请求(请求行、报头、空白行、正文) --> 服务器响应http请求(状态行、报头、空白行、正文),浏览器得到html代码 --> 浏览器解析html代码(构建DOM树、构建render树、布局render树、渲染render树),并请求html代码中的资源(如js、css、图片等) --> 浏览器对页面进行渲染呈现给用户。

HTTPS和HTTP的区别
1.HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全, HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全。
2. https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。
3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

http长连接和短连接的区别
在HTTP/1.0中默认使用短连接。也就是说,客户端和服务器每进行一次HTTP操作,就建立一次连接,任务结束就中断连接。而从HTTP/1.1起,默认使用长连接,用以保持连接特性。

发布了21 篇原创文章 · 获赞 10 · 访问量 8092

猜你喜欢

转载自blog.csdn.net/weixin_44997483/article/details/102950226