get和post有什么区别?——get与post详解

2021-06-15 16:23:38 浏览数 (4234)

不管是学习前端还是学习后端,get和post请求都是回避不开的知识点。但很多刚开始学习的小伙伴对这两种请求并不熟悉,接下来,小编带你分析一下get请求和post请求的区别吧。

GET请求

get请求

如图所示,这是一个GET请求,只有一个请求头,参数传递通过往URL后添加参数的方式进行传参。

POST请求

post请求

如图所示,这是一个POST请求,请求头后面携带一个表单数据。

相同点

请求头的大部分内容相同,只有部分有所区别,都是用来访问服务器的方法。

不同点

 GET请求  POST请求
参数传递方式  传参时将参数放于url后。
请求和参数分开,参数作为独自携带的数据进行上传。 
能否作为书签  url中有传递参数,可以作为书签保存。 因为书签保存的是url,而post请求中url没有参数,所以不能作为书签保存 。
安全性 请求的参数直接暴露在url中,不能用来做用户名密码的请求 。 虽然参数也可以查看,但不像get方法一样直接暴露 (相对安全)。
长度限制 因为url有最大长度限制,所以get请求的参数也有长度限制 。  post请求的参数独立发送,可以发送大量数据。
幂等性(即操作后是否会对服务器状态造成影响)  get请求是幂等的。 post请求不是幂等的 。
作用 get请求用于信息获取 。 post也可用于信息获取,但更多的是用来修改服务器上的资源的请求 。
后端如何取值 用Request.QueryString获取变量的值 。 用Request.Form获取提交的数据 。
使用 在数据查询时,建议使用get方式。  在做数据的增加,删除,改动时,建议用post方式。 

小结

不管是get请求还是post请求,他们都是http的请求。其实http的请求还有很多种,只不过这两种请求是最常被用户使用到的。关于请求部分的内容,属于http协议的内容,更多的的http协议的内容可以前往http教程进行了解。以上就是关于get和post请求的区别,更多精彩内容请关注W3C技术头条