ASP.NETのGetとPostの使い方Request.QueryString,Request.Form,Request.Paramsの違い

6762 ワード

フォームformの提出には2つの方法があり、1つはgetの方法であり、1つはpostの方法である.次のコードを見て、ASPを理解します.NET GetとPostの2つのコミットの違い:
< form id="form1" method="get" runat="server">     
    < div>     
            < asp:TextBox ID="name" runat="server">< /asp:TextBox>< br />     
        < br />     
            < asp:TextBox ID="website" runat="server">< /asp:TextBox>< br />     
        < br />     
        < br />     
        < asp:Button ID="Button1" runat="server" Text="send" />< br />     
        < br />     
        < br />     
          request   response   < br />     
        < br />     
        < br />     
   < /div>     
< /form>     

 
      
    
< form id="form2" method="post" runat="server">     
    < div>     
            < asp:TextBox ID="name2" runat="server">< /asp:TextBox>< br />     
        < br />     
            < asp:TextBox ID="website2" runat="server">< /asp:TextBox>< br />     
        < br />     
        < br />     
        < asp:Button ID="Button2" runat="server" Text="send" />< br />     
        < br />     
        < br />     
          request   response   < br />     
        < br />     
        < br />     
    < /div>     
< /form>     
    

/*URLからわかるASP.NET GetとPostの違いでは、どのようにプログラミングしてデータの受信を実現しますか?1つ目は、getメソッドで転送されたデータを受信する書き方:*/protected void Page_Load(object sender,EventArgs){string id=Request.QueryString["name"];string website=Request.QueryString["website"];Response.Write(id+"
"+website);Response.Write("あなたが使用しているのは"+Request.RequestType+"方式でデータを転送");
}//第2種、post方式で伝送されたデータを受信する書き方:protected void Page_Load(object sender,EventArgs e){string id 2=Request.Form["name 2"];string website 2=Request.Form["website 2"];Response.Write(id 2+「
」+website 2);Response.Write("あなたが使用しているのは"+Request.RequestType+"方式でデータを転送");             }         string id4 = Request["name4"];             string website4 = Request["website4"];             Response.Write(id4 + "< br>"+ website4);//第3種、getとpostメソッドでデータを転送するコードの書き方を同時に受け入れる://A書き方string id 3=Request.Params["name3"];             string website3 = Request.Params["website3"];             Response.Write(id3 + "< br>"+ website3);//B表記string id 4=Request["name 4"];             string website4 = Request["website4"];             Response.Write(id4 + "< br>"+ website4);
あなたの名前



あなたのサイト













あなたの名前


あなたのサイト





requestとresponseの使い方を学ぶ



/*URLからわかるASP.NET GetとPostの違いでは、どのようにプログラミングしてデータの受信を実現しますか?1つ目は、getメソッドで転送されたデータを受信する書き方:*/
protected void Page_Load(object sender,EventArgs){string id=Request.QueryString["name"];string website=Request.QueryString["website"];Response.Write(id+"
"+website);Response.Write("あなたが使用しているのは"+Request.RequestType+"方式でデータを転送");        } 
//2つ目は、postメソッドで送信されたデータを受信する書き方:
protected void Page_Load(object sender,EventArgs e){string id 2=Request.Form["name 2"];string website 2=Request.Form["website 2"];Response.Write(id 2+「
」+website 2);Response.Write("あなたが使用しているのは"+Request.RequestType+"方式でデータを転送");        }    string id4 = Request["name4"];          string website4 = Request["website4"];          Response.Write(id4 + "< br>"+ website4);   
//3つ目は、getとpostメソッドでデータを転送するコードの書き方を同時に受け入れる//A書き方
string id3 = Request.Params["name3"];          string website3 = Request.Params["website3"];          Response.Write(id3 + "< br>"+ website3);//B書き方
string id4 = Request["name4"];          string website4 = Request["website4"];          Response.Write(id4 + "< br>"+ website4); 
 
フォーム提出中、ASP.NETのGetとPost方式の違いは以下の点にまとめられる.
1.getはサーバからデータを取得し、postはサーバへデータを転送する.
2.getとは、提出フォームのACTION属性が指すURLにパラメータデータキューを加えたもので、値とフォーム内の各フィールドが1つずつ対応しており、URLに表示されます.postは、HTTP postメカニズムにより、フォーム内の各フィールドをその内容とともにHTML HEADER内に配置してACTION属性が指すURLアドレスに転送する.ユーザーはこのプロセスを見ることができません.
3.get方式ではサーバ側がRequestを用いる.QueryStringは変数の値を取得する、post方式に対してサーバ側はRequestを用いる.Formはコミットされたデータを取得します.
4.get転送のデータ量は小さく、2 KBを超えることはできません.post転送のデータ量は大きく、一般的には制限されないようにデフォルトされています.しかし、理論的には、IIS 4の中で最も多くは80 KBであり、IIS 5の中では100 KBである.
5.getセキュリティは非常に低く、postセキュリティは高い.しかし,実行効率はPost法より優れている.
推奨事項:
1、get方式の安全性はPost方式より劣っており、機密情報を含む場合はPostデータ提出方式を提案する.
2、データ照会をする時、Get方式を提案する;データの追加、変更、削除を行う場合は、Post方式を推奨します.
 
params、Request、Request.querystring、Request.Form具体的な違い!MSDN:Request ObjectRequest Request.Form:POST方式で提出されたデータを取得する(Formから提出されたデータを受信する);Request.QueryString:アドレスバーパラメータ(GET方式でコミットされたデータ)Request:以上の2つの方式(GET方式でコミットされたデータを優先的に取得)を含み、QueryString、Form、ServerVariableで前後順に検索されます.また、時には異なる結果を得ることもあります.Formのデータが必要なだけで、RequestではなくRequestを使用しています.Formでは、プログラムはQueryString、Server Variableでも検索されます.ちょうどあなたのQueryStringやServerVariableにも同名の項目があれば、あなたが得たのはあなたがもともと望んでいた値ではありません.Request.Paramsはすべてのpostとgetから渡された値の集合ですrequest.paramsはrequestを含む集合ですQueryString、request.Form、request.cookiesとrequest.ServerVariable. asp.NetデフォルトはPOST Formですが、自分だけpost自分で、POSTを他のページに移動することはできません
命令ページに提出しなければならない場合はrunat="server"をHTML要素で削除しsubmitで提出するRequest.Form[「xxx」]は、このブログの別の記事HTMLフォームを参照して値を取ることができます.
本文はCSDNブログから来て、転載して出典を明記してください:http://blog.csdn.net/liaolian9948/archive/2010/04/01/5440416.aspx