资讯专栏INFORMATION COLUMN

Get和Post的区别

wyk1184 / 2766人阅读

摘要:是不等幂的,例如在上两次提交相同的文章,则会产生两个资源。通常缓存只适用于幂等的请求,对于其他类型的响应则无能为力。请求的缓存过程第一次请求时,返回数据。浏览器会先检查目录中是否有该文件,并且是否过期。

post和get差别最核心的一点是:

缓存机制的不同(能否被浏览器缓存)
缓存机制
这里我们用到了开头所讲的幂等性概念。由于网络的不可靠,使得等幂性显得特别重要,因此get、head、put、delete一定要设计成等幂的:如果一次请求,服务器收到处理以后,客户端没有收到相应,客户端会再次请求,如果没有等幂性保障,就会发生意想不到的问题。
post是不等幂的,例如在segmentfault上两次提交相同的文章,则会产生两个资源。

通常HTTP 缓存只适用于 idempotent request(幂等的请求),对于其他类型的响应则无能为力。

get请求的缓存过程

第一次请求时,返回数据。
返回数据,在http头部中包含last-modified(最后修改的时间) Etag(指示资源的状态的唯一标识)Expires(指示资源在浏览器缓存中的过期时间)
然后浏览器会将请求回的文件放在Cache目录下,并保存上述信息
发起第二次请求。
浏览器会先检查Cache目录中是否有该文件,并且是否过期。同时满足这两个条件,则浏览器不会在向服务器发送请求,而是直接使用缓存中的文件。
否则,浏览器会发送请求服务器 ,并在头部添加If-Modified-Since 和 If-None-Match。
如果文件从上次访问至今都没有被修改过或Etag信息没有变化,则直接返回一个304的状态,表明服务器端允许请求访问资源,但不满足条件,返回不包含任何响应的主体部分。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/101225.html

相关文章

  • 都9102年了,还问GETPOST区别

    摘要:前言最近看了一些同学的面经,发现无论什么技术岗位,还是会问到和的区别,而搜索出来的答案并不能让我们装得一手好逼,那就让我们从报文的角度来撸一波,从而搞明白他们的区别。所以,和分开发送是部分浏览器或框架的请求方法,不属于必然行为。 1 前言 最近看了一些同学的面经,发现无论什么技术岗位,还是会问到 get 和 post 的区别,而搜索出来的答案并不能让我们装得一手好逼,那就让我们从 HT...

    h9911 评论0 收藏0
  • postget区别

    摘要:与区别本文参考简单介绍和是与服务器交互的方式,说到方式,有。他们的作用分别是对服务器资源的增删改查。区别分析把请求的数据放在上,即协议头上,其格式为以分割和传输数据,参数之间以相连。请求只能进行编码,而支持多种编码方式。 post与get区别 本文参考:https://segmentfault.com/a/1190000009512784 简单介绍 get和post是HTTP与服务器交...

    mingzhong 评论0 收藏0
  • postget区别

    摘要:与区别本文参考简单介绍和是与服务器交互的方式,说到方式,有。他们的作用分别是对服务器资源的增删改查。区别分析把请求的数据放在上,即协议头上,其格式为以分割和传输数据,参数之间以相连。请求只能进行编码,而支持多种编码方式。 post与get区别 本文参考:https://segmentfault.com/a/1190000009512784 简单介绍 get和post是HTTP与服务器交...

    Bmob 评论0 收藏0
  • GETPOST请求区别分析

    摘要:对数据长度的限制是的。安全性与相比,的安全性较差,因为所发送的数据是的一部分。和只是协议中两种请求方式,而协议是基于的应用层协议,无论还是,用的都是同一个传输层协议,所以在传输上,没有区别。 1 前言 众所周知,在我们开发项目的过程中,关于POST与GET请求是我们不得不掌握的知识,那么它们两者之间又有什么区别呢?接下来,我们一起从HTTP报文等角度来探讨学习一下关于两者的不同 2 H...

    Baoyuan 评论0 收藏0

发表评论

0条评论

wyk1184

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<