GET 与 POST
定义
INFO
GET
方法请求一个指定资源的表示形式,使用GET
的请求应该只被用于获取数据POST
方法用于将实体提交到指定的资源,通常导致在服务器上的状态变化或副作用- 本质上都是
TCP
链接,并无差别,但是由于HTTP
的规定和浏览器/服务器的限制,导致他们在应用过程中会体现出一些区别
区别
INFO
GET
在浏览器回退时是无害的,而POST
会再次提交请求。GET
产生的URL
地址可以被Bookmark
,而POST
不可以。GET
请求会被浏览器主动cache,而POST
不会,除非手动设置。GET
请求只能进行url
编码,而POST
支持多种编码方式。GET
请求参数会被完整保留在浏览器历史记录里,而POST
中的参数不会被保留。GET
请求在URL
中传送的参数是有长度限制的,而POST
没有。- 对参数的数据类型,
GET
只接受ASCII
字符,而POST
没有限制。 GET
比POST
更不安全,因为参数直接暴露在URL
上,所以不能用来传递敏感信息。GET
参数通过URL
传递,POST
放在Request body
中