比较 GET 与 POST

post比get安全

get请求方法向url添加数据

 全部用POST不是十分合理,最好先把请求按功能和场景分下类,

对数据请求频繁,数据不敏感且数据量在普通浏览器最小限定的2k范围内,这样的情况使用GET。

其他地方使用POST。

我就疑惑了,为什么post这么好还用get呢

因为它们表达的语义不一样,这决定了主干网络可以对其做不同的处理。

get表达的是一种幂等的,只读的,纯粹的操作,即它除了返回结果不应该会产生其它副作用(如写数据库),因此绝大部分get请求(通常超过90%)都直接被CDN缓存了,这能大大减少web服务器的负担。
而post所表达的语义是非幂等的,有副作用的操作,所以必须交由web服务器处理。 把所有get请求换成post,意味着主干网络上的所有CDN都废掉了,web服务器要处理的请求数量将成百上千倍地增加,显然这不是一个聪明的做法!

  

最大的优势是, GET 的URL可以人肉手输啊。。。你在地址栏打个POST给我看看。本质上面, GET 的所有信息都在URL, 所以很方便的记录下来重复使用。

所以如果你希望
- 请求中的URL可以被手动输入
- 请求中的URL可以被存在书签里,或者历史里,或者快速拨号里面,或者分享给别人。
- 请求中的URL是可以被搜索引擎收录的。
- 带云压缩的浏览器,比如Opera mini/Turbo 2, 只有GET才能在服务器端被预取的。
- 请求中的URL可以被缓存。

请使用GET. 

大家有没有注意到,其实这里面很多方面的要求是和网站的运营相关的,而不是技术相关的。任何的技术行为中,其实多多少少都能看到商业的影子。

 只读用get,可以保存数据到缓存中,减少服务器负担

 https://www.cnblogs.com/strayling/p/3580048.html

这个连接说的更详细

除了有安全性要求的地方,可以用get尽量用get,获取静态数据用get

 

posted @ 2019-04-25 15:10  优前程  阅读(305)  评论(0编辑  收藏  举报