在C#中可以设定<form>的method属性指定表单的提交方式,Get(默认值)是通过URL传递表单值,Post传递的表单值是隐藏到http的报文中,url中是看不到的。
Get和Post的区别:
1)Get是通过url传递表单值,Post通过url看不到表单域的值。
2)Get传递的数据量是有限的,如果要传递大数据不能用get,比如type="file"上传文章,type="password"传递密码或者<textarea>发表大段的文字,post是没有数据量限制的;Post会有浏览器提示重新提交表单的问题,get则没有。对于post的表单重新输入地址栏再刷新就不会提示重新提交了,因为重新输入地址就没有提交的数据了。Post方式的正确的地址很难直接发给其他人。
3)Get方式URL数据格式。服务端文件名后面跟着"?",由于客户端可能向服务器端提交多个键值对,键值对之间会用"&"进行分割,如果URL中有汉字,特殊字符等等则需要对URL进行编码。
4)表单域中只有设定了name的才会被提交给服务器。如果给submit按钮设定了name,那么按钮的value也会被提交给服务器。