欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

http中Post与Get区别 博客分类: Html html 

程序员文章站 2024-03-21 22:13:22
...

在http协议中定义了与服务器互交的4种基本方法分别是Get,Post,Put,Delete。(详情:http://blog.csdn.net/clsdata/article/details/5519837 )在我们的Html页面的Form中有用到Post和Get两种提交数据的方法 :

1.Get:

当使用Get方法的时候浏览器会将Form表单中的Input元素都添加到Url地址的?后面,这个时候原本的Url地址后面的参数就会默认的被清除掉。例如:

<form id="form1" runat="server" action="DefaultTest.aspx?opt=xxx" method="get">
<div>
<input type="submit" id="btn1" value="button1" name="btn1"/>
<input type="text" name="txt1" value="text1"/>
<input type="text" name="txt2" value="text2"/>
</div>
</form>

提交表单的时候Url地址就会变成DefaultText.aspx?txt1=text1&txt2=text2

我们看到这个默认的opt=xxx会被删除,而是将form中的元素以name和value作为键值对追加到后面。

 

2.Post:

当时用Post方法的时候Url后面的参数不变;

<form id="form1" runat="server" action="DefaultTest.aspx?opt=xxx" method="post">
<div>
<input type="submit" id="btn1" value="button1" name="btn1"/>
<input type="text" name="txt1" value="text1"/>
<input type="text" name="txt2" value="text2"/>
</div>
</form>

提交表单的时候Url 是 DefaultTest.aspx?opt=xxx

只不过在Http的处理的时候会将Form中的元素放到Content中,而在用Get方法的时候Http是没有Content的.

关于这两个方法的却别在这个文章里面也有详细的介绍:

http://blog.csdn.net/darxin/article/details/4944225

 

总之记住一句话:用Get方法的时候就不能自己在url后面添加参数,因为这样添加是没有意义的.

相关标签: html