`

简说 get post 的区别和用途

    博客分类:
  • tips
阅读更多

每日一点tips

 

最近碰到有人在讨论这个,还有带有主观色彩认为“post 比 get 好”。这里也简单写写。

 

说到post和get的区别和优缺点,一般都会提到get方式在url上的长度限制,以及url上面那一长串显示给某些算是“强迫症”的用户带来一点点的不舒适(或者是因为东西在url上显示出来让人感觉有点不好,或者按照某人说法,url上东西越少‘感觉’越好些)。想当初我被传递这一个概念的时候,也懵逼地觉得好像有道理……

 

言归正传,网上也有很多更详细的解释,这里就简单罗列几点:

 

get 和 post本质一样: HTTP协议中发送请求的两种方法,都是TCP链接。

 

  • post 优点和用途:

       各浏览器商和服务器商对url做了长度限制,也就直接影响了get发送的数据长度。

       post数据不会被主动缓存。

 

       进行数据新增和更改的时候用post 方式。毕竟表单提交的内容多而且总有会涉及到些敏感数据。

 

  • get 优点和用途

       get的速度比post快一点点。因为post在发送数据之前需要先发送header,在得到100响应后再继续发送         内容。而get是一步到位。

       get在浏览器回退时不会再次提交请求,post会。

 

       进行搜索查询时用get方式。

 

最后再提一点,当真的碰上有的用户提出当进行搜索的时候url上面的内容能不能去掉这种时候,我想我们应该是以专业的角度跟人家说这种get方式进行查询是更合适,而至于所顾虑的安全问题本质上在查询这种场景中用post也一样存在。毕竟问的人是不够专业然后拿一点“似乎这样会更好”的想法来提,而要是为了满足这“看上去感觉更好”的想法而让我们不采用更合理的get方式,本身就不能接受……除非是要定制,那就是另一个话题咯。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics