经常看到url中很长的一串请求参数,为什么不采用post方式?



个人记录:2018年,工作的第6到7个年头。
重点研究自己不太擅长的技术:分布式、高并发、大数据量、数据库优化、高性能、负载均衡等。
刷题是一种态度,是一种好习惯。
我刷题,我骄傲。




题目:经常看到url中很长的一串请求参数,为什么不采用post方式?
出处:http://ifeve.com/question/%e7%bb%8f%e5%b8%b8%e7%9c%8b%e5%88%b0url%e4%b8%ad%e5%be%88%e9%95%bf%e7%9a%84%e4%b8%80%e4%b8%b2%e8%af%b7%e6%b1%82%e5%8f%82%e6%95%b0%ef%bc%8c%e4%b8%ba%e4%bb%80%e4%b9%88%e4%b8%8d%e9%87%87%e7%94%a8post/


个人看法
get方式,是浏览器默认方式,访问简单,比如点击一个链接,直接就跳转了。
如果用post,还需要构造表单,程序实现麻烦,用户体验还会收到“不能重复提交表单”等提示,麻烦很多。
get方式,用户直接看到url和参数,复制粘贴,可以方便收藏、转发,而post不行。


这个问题的本质是,get和post的区别,get的优势。


网上找的资料:
http://www.w3school.com.cn/tags/html_ref_httpmethods.asp


get缓存、历史记录、书签。


GET 方法
请注意,查询字符串(名称/值对)是在 GET 请求的 URL 中发送的:
/test/demo_form.asp?name1=value1&name2=value2
有关 GET 请求的其他一些注释:
GET 请求可被缓存
GET 请求保留在浏览器历史记录中
GET 请求可被收藏为书签
GET 请求不应在处理敏感数据时使用
GET 请求有长度限制
GET 请求只应当用于取回数据


POST 方法
请注意,查询字符串(名称/值对)是在 POST 请求的 HTTP 消息主体中发送的:
POST /test/demo_form.asp HTTP/1.1
Host: w3schools.com
name1=value1&name2=value2
有关 POST 请求的其他一些注释:
POST 请求不会被缓存
POST 请求不会保留在浏览器历史记录中
POST 不能被收藏为书签
POST 请求对数据长度没有要求


网友看法
方腾飞 
这个原因很多。在很多场景下,用GET实现起来更简单,也足够了,比如并发网给其他网站引流需要加些参数,
这样方便其他网站统计流量来源,如果用POST,并发网就的做一个Post提交,会比较麻烦。


割眼看世界
1 浏览器地址栏打开的默认就是GET,所以链接用GET很方便。
2 POST的提交需要表单或js提交,麻烦。
3 GET可以使用缓存
4 GET有利于SEO


华仔的逆袭
Get方式的简洁和缓存比较能说服我
 

猜你喜欢

转载自blog.csdn.net/FansUnion/article/details/79638168