HTTP有哪些请求方式?GET 和 POST 的区别?GET 的长度限制是多少?
  G1PV9Utmq6En 2023年11月02日 37 0

一、HTTP请求方式

GET:对服务器获取资源的简单请求;

POST:向服务器提交数据请求;

PUT:修改指定资源;

DELETE:删除URL标记的指定资源;

CONNECT:用于代理服务器;

TRANCE:主要用于回环测试;

OPTIONS:返回所有可用的方法;

HEAD:获取URL标记资源的首部。

其中用的比较多的就是:POST、DELETE、PUT、GET,对应于增删改查。

二、GET 和 POST 的区别

2.1传参方式不同

从HTTP报文层来看,GET请求将信息放在URL中,POST请求将请求信息放在请求体中。

这一点使得GET请求携带的数据量有限,因为URL本身是有长度限制的,而POST请求将请求的数据信息放在报文体中,因为对于大小没有限制。

从形式上看,GET请求把数据放在URL上不安全,而POST请求把数据放在请求体里相对安全一些。

2.2幂等和安全性不同

从数据库层面来看,GET符合幂等性和安全性,而POST请求不符合。

这个其实和GET/POST请求的作用有关,按照HTTP的约定,GET请求用于查看信息,不会改变服务器上的信息,而POST请求用来改变服务器上的信息。

正因为GET请求只查看信息,不改变信息,对数据库的依次或者多次操作获得的结果是一致的,认为它符合幂等性。

安全性是指对数据库操作没有改变数据库中的数据。

2.3可被缓存不同

从其它层面来看,GET请求能够被缓存,GET请求能够保存在浏览器的浏览记录中,GET请求的URL能够保存为浏览器书签。这些都是POST请求所不具备的。

缓存是GET请求被广泛应用的根本,它能够被缓存也是因为它的幂等性和安全性,除了返回结果没有其它多余的动作,因为绝大部分的GET请求都被CDN缓存起来了,大大减少了Web服务器的负担。

三、GET 的长度限制是多少

HTTP中GET方法是通过URL传递数据的,但是URL本身并没有对数据的长度进行限制,真正限制URL长度的浏览器。

例如IE浏览器对URL的最大限制是2000多个字符,大概2kb左右,像Chrome、Firefox等浏览器支持的URL字符数风多,其中FireFox中URL的最大长度限制是65536个字符,Chrome则是8182个。

这个长度不是针对数据部分,是针对整个URL。

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读