表單提交Post方法、Get方法背後的祕密
阿新 • • 發佈:2019-01-06
表單用來接受使用者的輸入,並將使用者的輸入以“name=value值對”集合的形式提交到伺服器進行處理。那麼表單是怎樣將資料提交到伺服器的?伺服器是怎樣對錶單資料進行處理的?下面我將為大家揭開表單提交背後的祕密 表單用<form></form> 標記定義,表單裡面放置各種接受使用者輸入的控制元件
- <formid="login"name="login"method ="get"action="Get.aspx">
-
<p>使用者名稱:<inputid="txtUserName"name="txtUserName"
- <p>密 碼:<inputid="txtPWD"name="txtPWD"type="text"/></p><!--密碼文字框-->
- <p><inputid="subLogin"name ="subLogin"type="submit"value="提交"/></p><!--提交按鈕-->
- </form>
首先我們來看一下表單form的一些屬性 1、id:表單的唯一標識 2、name:表單的名字 3、method
-
<
- <p>使用者名稱:<inputid="txtUserName"name="txtUserName"type="text"/></p><!--使用者名稱文字框-->
- <p>密 碼:<inputid="txtPWD"name="txtPWD"type="text"/></p><!--密碼文字框-->
- <p><inputid="subLogin"name ="subLogin"type="submit"value="提交"/></p><!--提交按鈕-->
- </form>
瀏覽器中效果
處理表單的Post.aspx頁面程式碼
- protectedvoid Page_Load(object sender, EventArgs e)
- {
- string strUserName = Request.Form["txtUserName"];
- string strPWD=Request .Form["txtPWD"];
- if (strUserName == "張三" && strPWD == "123456")
- {
- Response.Write(strUserName + "登入成功!");
- }
- else
- {
- Response.Redirect("Login.htm");
- }
- }
執行的結果
由以上程式碼可知,伺服器端頁面接收表單資料所用的方法是Request.Form["表單控制元件的name屬性"],接收到資料後便可以進行處理,然後返回結果 2、Get方法 這是傳送表單資料的預設方法,這種方法會以 “?name1=value1&name2=value2”的形式,將表單資料附加到URL的後面,提交到伺服器處理,這種方法安全性當然不如post方法,因為表單資料會暴露在URL中,但是它的處理效率要比post方法高。如果表單中的資料沒什麼隱私資料,建議使用get方法,它的效率較高