get和post是向服务器提交请求的两种方式
POST 主要用来传输数据,而 GET 主要用来获取资源
(1)get请求是一个幂等的请求,get请求用于对服务器资源不会产生影响的场景,比如请求一个网页的资源,而post不是一个幂等的请求,一般用于对服务器资源会产生的情景,比如注册用户(会往数据库中插入一行数据)
幂等是指一个请求执行多次和仅执行一次的结果是一样的
比如你点击某篇文章的链接,浏览器就会发送GET请求给服务器,服务器就会返回这篇文章的所有文字及资源。
你在这篇文章底部进行留言,留完言之后点击提交,这时浏览器就会发送POST请求给服务器。
(2)get带参数,post不带参数
由于用get方式提交请求的时候,传参,参数是写在url地址里面的,即:明着传参,这样很容易暴露隐私,尤其是当参数里面有密码的时候
而且url地址的长度是有限制的,不能太长,所以get请求把参数带在url地址里面,很有可能一部分参数由于超过url地址,没有办法传给服务器
所以我们通常更喜欢用post方式提交请求,而不是get方式提交请求
get就是从服务器拿东西,post就是向服务器提交东西
(1)get方法是从服务器上获取资源;post方法是向服务器传送数据
比如你点击某篇文章的链接,浏览器就会发送GET请求给服务器,服务器就会返回这篇文章的所有文字及资源。
你在这篇文章底部进行留言,留完言之后点击提交,这时浏览器就会发送POST请求给服务器。
在地址栏中输入网址并显示网页,应该使用GET方法。
即:双向(有来有回)是get
单向(有去无回)是post
点击超级链接也是使用GET方法。
填写完表单内容,点击提交,可能是GET也可能是POST(在HTML源代码中,表单属性会指定使用哪一种该方法来发送请求),仅仅提交不要求返回什么东西就是POST,提交之后还要返回东西那就是GET
即:双向(有来有回)是get
单向(有去无回)是post
(2)浏览器向Web服务器发送请求消息的三种情况:
1.在地址栏输入url
2.点击网页中的超级链接
3.在表单中填写完信息后点击提交