get与post请求

Posted 菜鸟,你好

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了get与post请求相关的知识,希望对你有一定的参考价值。

1.post请求

如果表单以Post方式提交过来的,接收时必须以Requert.Form来接收,并且表单元素必须有name属性,而Form指定的键的名称就是name属性的值

 1  <form method="get" action="Accept.ashx">
 2         用户名:<input type="text" name="txtName" value=" " /><br />
 3 
 4         密码:<input type="password" name="txtPwd"/><br />
 5        <input type="submit" value="提交"/>
 6     </form>
 7 
 8 //以下为Accept.ashx页面
 9  public void ProcessRequest(HttpContext context)
10     {
11         context.Response.ContentType = "text/plain";
12         //如果表单以Post方式提交过来的,接收时必须以Requert.Form来接收,并且表单元素必须有name属性,而Form指定的键的名称就是name属性的值
13         string userName = context.Request.Form["txtName"];
14         string userPwd = context.Request.Form["txtPwd"];
View Code

get请求

如果是get请求,那么接收的时候必须用QueryString

 1 <form method="get" action="Accept.ashx">
 2         用户名:<input type="text" name="txtName" value=" " /><br />
 3 
 4         密码:<input type="password" name="txtPwd"/><br />
 5        <input type="submit" value="提交"/>
 6 
 7       //以下是Accept.ashx界面
 8       //如果是get请求,那么接收的时候必须用QueryString
 9         string userName = context.Request.QueryString["txtName"];
10         string userPwd = context.Request.QueryString["txtPwd"];
11         context.Response.Write("用户名是" + userName + "密码是" + userPwd);
12         
13         
View Code

总结:

1).如果是post请求方式,那么表单中的数据会放到请求报文体中,发送到服务器,如果以get方式进行请求那么表单中的数据会放到URL地址栏中发送到服务器(注意:元素必须有name属性)

2).在服务端接收方式不一样,如果是post请求用Request.Form,如果是get请求用Request.QueryString;

3).post请求比get请求安全,注册登录等表单用post提交。

4).post请求发送的数据比get请求大。

只能将表单元素的value值提交到服务端(span,div等不属于表单元素,所以无法提交),并且表单元素必须要加value属性

 

以上是关于get与post请求的主要内容,如果未能解决你的问题,请参考以下文章

关于Agax的get与post浅分析,同步请求与异步请求;

性能工具之 Locust 工具 Get 与 Post 请求

性能工具之 Locust 工具 Get 与 Post 请求

性能工具之 Locust 工具 Get 与 Post 请求

简单的 Javascript http 请求片段但不起作用

java http请求get与post