POST和Get辨析

   在Form里面,可以使用post也可以使用get。它们都是method的合法取值,但是两者也有不同,主要区别在于传递和获取参数的方式不同

一、Get方法:

  1、参数的传递方式:
   通过URL请求来传递用户的输入。即在地址栏中可以看到我们提交所传递的参数,这也是浏览器默认的传递参数方式
  2、获取所传递的参数:
   Get方式的提交你需要用Request.QueryString来取得变量的值
  3、传递的参数长度限制
   Get方式传递的参数长度限制在2KB以内

实例:

  传递参数页页面get.html

<html>
  <body>
   <form name="form1" method="GET" action="server.html">
      输入名字: <input type="text" name="u">
      <input type="submit" name="Submit" value="Submit">
   </form>
  </body>
</html>



  提交到的页面:server.html


<html>
 <head>
   <SCRIPT LANGUAGE="JavaScript">
    var request={
     QueryString : function(val)
      {var uri = window.location.search;
       var re = new RegExp("" +val+ "=([^\&\?]*)", "ig");
       return ((uri.match(re))?(uri.match(re)[0].substr(val.length+1)):null); }
    }
    var u = request.QueryString("u");
    var l = request.QueryString("l");
    document.writeln("Hello! " + u);

  </SCRIPT>
  </head>

  <body>

  </body>

</html>


二、Post方法:

1、参数的传递方式:
   Post参数是被URL编码的。然而,变量名/变量值不作为URL的一部分被传送,而是放在实际的HTTP请求消息内部被传送。
  2、获取所传递的参数:
   Post方式提交时,你必须通过Request.Form来访问提交的内容。
  3、传递的参数长度限制
   Post传送的数据量较大,一般被默认为不受限制

 实例:

  前台表单:

  <form id="fm" method="post" novalidate runat="server">

   <input type="hidden" id="test" name="test" />

  </form>


  后台处理程序

	提交到后台一般处理程序
        public void ProcessRequest(HttpContext context)
        {
            //调试
            if (null != context.Request.Form["id"])
            {//获取前台传来的值
               string category = context.Request.Form["test"].ToString().Trim();
            }
            string command =context.Request.Form["test"].ToString().Trim();//前台传的标示值
          
            {//调用查询方法
                Query(context);
            }
        }



三、小结:



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 17
    评论
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值