前端基础–get和Post 区别

1.get和post都是http协议中的一种请求方式,不同的请求方式有不同的特点,工作模式也不一样

2,get请求没有请求正文部分,而post有,所以get方式不能使用正文提交数据,但是可以使用queryString的方式来提交,注意:queryString是url的一部分,和请求方式无关,所以不论是什么请求方式都是可以有queryString的,需要再次注意的是,queryString的长度(url的长度)是有限制的,所以如果请求方式是get,那么通过queryString提交的数据的话,注意长度不要超出url的长度限制范围,(范围:2000多个,不同浏览器的url长度限制不一样,标准浏览器一般要再多点)

3.使用queryString方式传输数据的时候需要对传输的数据进行转码(url编码)-encodeURI()

4.使用http的正文发送(post),那么是通过send方法把数据添加到正文中,同时还需要设置发送头信息,设置content-type的类型,这个类型必须和后端的解析类型保持一致,当数头信息设置成application/x-www-form-urlencoded的时候,不需要手动进行编码

5.get方式会缓存页面,需要通过随机数或时间戳解决缓存问题,而post不会缓存所以没有该问题

6.因为get方式会缓存,同时缓存文件名中有提交的数据,所以get方式传递数据有一定隐私安全上的隐患,所以敏感数据通过post提交

No Comments

Post a Comment