1月13号 MVC get 和post 传值的不同

128 阅读1分钟

1、Get方法是用来向服务器上获取数据,而Post是用来向服务器上传递修改数据。

2、Get将表单里的数据添加到action所指向的URL后面,并且两者之间使用”?”连接,而各个变量之间使用”&”连接;Post是将表单中的数据放在form的数据体中,按照变量和值对象的方式,传递到所指向的action.

3、Get是不安全的,因为在传输过程中,数据被放在请求的Url中,这样,用户可以直接在浏览器上看到提交的数据,一些系统内部信息也一同显示在用户面前。Post的所有操作对用户来说都是不可见的。

4、Get传输的数据量小,主要是受限与于Url长度限制,其中IE浏览器对URL的最大限度为2083个字符。而post可以的传输大量的数据,所以在上传文件和大数据量时使用post。

5、Form提交默认为Get方法提交(好吧,WebForm时代绝对是POST,MVC反转了)。

6、Get方式获取数据后,刷新不会有负面的影响,因为它只是获取数据,而Post方法刷洗页面重复提交可能会产生不良的后果。

具体使用如下代码:

Home/Index.cshtml:\


Home/Search方法: public ActionResult Search(string query)

而如果使用post方法,如: