一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

params、Request、Request.querystring、Request.Form 區(qū)別!

 zww_blog 2012-03-29

表單form的提交有兩種方式,一種是get的方法,一種是post 的方法.看下面代碼,理解ASP.NET Get和Post兩種提交的區(qū)別:

 

[c-sharp] view plaincopy
  1. < form id="form1" method="get" runat="server">    
  2.     < div>    
  3.         你的名字< asp:TextBox ID="name" runat="server">< /asp:TextBox>< br />    
  4.         < br />    
  5.         你的網(wǎng)站< asp:TextBox ID="website" runat="server">< /asp:TextBox>< br />    
  6.         < br />    
  7.         < br />    
  8.         < asp:Button ID="Button1" runat="server" Text="send" />< br />    
  9.         < br />    
  10.         < br />    
  11.         學(xué)習(xí)request 和 response的用法< br />    
  12.         < br />    
  13.         < br />    
  14.    < /div>    
  15. < /form>    
  16.    
  17.      
  18.    
  19. < form id="form2" method="post" runat="server">    
  20.     < div>    
  21.         你的名字< asp:TextBox ID="name2" runat="server">< /asp:TextBox>< br />    
  22.         < br />    
  23.         你的網(wǎng)站< asp:TextBox ID="website2" runat="server">< /asp:TextBox>< br />    
  24.         < br />    
  25.         < br />    
  26.         < asp:Button ID="Button2" runat="server" Text="send" />< br />    
  27.         < br />    
  28.         < br />    
  29.         學(xué)習(xí)request 和 response的用法< br />    
  30.         < br />    
  31.         < br />    
  32.     < /div>    
  33. < /form>    
  34.    
  35.   
  36. /*從URL中可看出ASP.NET Get和Post的區(qū)別.那么那如何編程實(shí)現(xiàn)數(shù)據(jù)的接收呢? 
  37. 第1種,接收用get 方法傳輸?shù)臄?shù)據(jù)的寫法: 
  38. */  
  39.   
  40. protected void Page_Load(object sender, EventArgs e)    
  41.     {    
  42.         string id = Request.QueryString["name"];    
  43.         string website = Request.QueryString["website"];    
  44.         Response.Write(id + "< br>" + website);    
  45.    
  46.       Response.Write("你使用的是" + Request.RequestType + "方式傳送數(shù)據(jù)");    
  47.    
  48.     }    
  49.   
  50. //第2種,接收用post 方法傳輸?shù)臄?shù)據(jù)的寫法:  
  51.   
  52. protected void Page_Load(object sender, EventArgs e)    
  53.     {    
  54.           
  55.         string id2 = Request.Form["name2"];    
  56.         string website2 = Request.Form["website2"];    
  57.         Response.Write(id2 + "< br>" + website2);    
  58.    
  59.    
  60.         Response.Write("你使用的是" + Request.RequestType + "方式傳送數(shù)據(jù)");    
  61.    
  62.     }    
  63.    
  64. string id4 = Request["name4"];    
  65.         string website4 = Request["website4"];    
  66.         Response.Write(id4 + "< br>" + website4);    
  67.    
  68.   
  69. //第3種,同時(shí)接受get和post 方法傳送數(shù)據(jù)的代碼寫法:  
  70. //A 寫法  
  71.   
  72. string id3 = Request.Params["name3"];    
  73.         string website3 = Request.Params["website3"];    
  74.         Response.Write(id3 + "< br>" + website3);    
  75.    
  76. //B 寫法  
  77.   
  78. string id4 = Request["name4"];    
  79.         string website4 = Request["website4"];    
  80.         Response.Write(id4 + "< br>" + website4);    
 

 

 

    表單提交中,ASP.NET的Get和Post方式的區(qū)別歸納如下幾點(diǎn):

    1. get是從服務(wù)器上獲取數(shù)據(jù),post是向服務(wù)器傳送數(shù)據(jù)。

    2. get是把參數(shù)數(shù)據(jù)隊(duì)列加到提交表單的ACTION屬性所指的URL中,值和表單內(nèi)各個(gè)字段一一對(duì)應(yīng),在URL中可以看到。post是通過HTTP post機(jī)制,將表單內(nèi)各個(gè)字段與其內(nèi)容放置在HTML HEADER內(nèi)一起傳送到ACTION屬性所指的URL地址。用戶看不到這個(gè)過程。

    3. 對(duì)于get方式,服務(wù)器端用Request.QueryString獲取變量的值,對(duì)于post方式,服務(wù)器端用Request.Form獲取提交的數(shù)據(jù)。

    4. get傳送的數(shù)據(jù)量較小,不能大于2KB。post傳送的數(shù)據(jù)量較大,一般被默認(rèn)為不受限制。但理論上,IIS4中最大量為80KB,IIS5中為100KB。

    5. get安全性非常低,post安全性較高。但是執(zhí)行效率卻比Post方法好。

    建議:

    1、get方式的安全性較Post方式要差些,包含機(jī)密信息的話,建議用Post數(shù)據(jù)提交方式;

    2、在做數(shù)據(jù)查詢時(shí),建議用Get方式;而在做數(shù)據(jù)添加、修改或刪除時(shí),建議用Post方式。


params、Request、Request.querystring、Request.Form 具體區(qū)別! 
MSDN:Request ObjectRequest
Request.Form:獲取以POST方式提交的數(shù)據(jù)(接收Form提交來的數(shù)據(jù));
Request.QueryString:獲取地址欄參數(shù)(以GET方式提交的數(shù)據(jù))
Request:包含以上兩種方式(優(yōu)先獲取GET方式提交的數(shù)據(jù)),它會(huì)在QueryString、Form、ServerVariable中都按先后順序搜尋一遍。而且有時(shí)候也會(huì)得到不同的結(jié)果。如果你僅僅是需要Form中的一個(gè)數(shù)據(jù),但是你使用了Request而不是Request.Form,那么程序?qū)⒃赒ueryString、ServerVariable中也搜尋一遍。如果正好你的QueryString或者ServerVariable里面也有同名的項(xiàng),你得到的就不是你原本想要的值了。
Request.Params是所有post和get傳過來的值的集合,request.params其實(shí)是一個(gè)集合,它依次包括request.QueryString、request.Form、request.cookies和request.ServerVariable。
asp.net 默認(rèn)雖然是POST Form,但是只是自己post自己,不能POST到其他頁面


如果非要提交到令一個(gè)頁面的話 用HTML元素 把runat="server" 去掉 用submit提交
用Request.Form["xxx"] 可以取值

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    日韩精品在线观看完整版| 午夜精品麻豆视频91| 亚洲成人免费天堂诱惑| 亚洲中文字幕综合网在线| 中文字幕一区二区免费| 欧美亚洲另类久久久精品| 午夜精品国产精品久久久| 不卡一区二区在线视频| 91欧美一区二区三区| 亚洲一区二区欧美激情| 国内精品伊人久久久av高清| 久热人妻中文字幕一区二区| 日本不卡一本二本三区| 欧美一区二区三区不卡高清视| 翘臀少妇成人一区二区| 欧美精品亚洲精品一区| 欧美日韩国产成人高潮| 亚洲午夜福利视频在线| 久久久免费精品人妻一区二区三区| 中文字幕乱子论一区二区三区| 婷婷激情五月天丁香社区| 91精品日本在线视频| 国语对白刺激高潮在线视频| 粉嫩一区二区三区粉嫩视频| 国产成人精品午夜福利av免费| 视频在线观看色一区二区| 激情视频在线视频在线视频| 国产一区二区三区av在线| 欧美日韩中国性生活视频| 国产精品内射婷婷一级二级| 九九热精彩视频在线免费| 亚洲精品中文字幕熟女| 亚洲丁香婷婷久久一区| 一区二区三区四区亚洲专区| 精品精品国产自在久久高清| 国产老熟女超碰一区二区三区| 亚洲一区二区三区四区性色av| 欧美日韩亚洲国产av| 国产一区二区三区丝袜不卡| 精品高清美女精品国产区| 久久中文字幕中文字幕中文|