1. 程式人生 > >request.form()和request()的區別

request.form()和request()的區別

限制 數據信息 顯示 for clas https ref ble 地址欄

Request.Form:獲取以POST方式提交的數據(接收Form提交來的數據);
Request.QueryString:獲取地址欄參數(以GET方式提交的數據)
Request:包含以上兩種方式(優先獲取GET方式提交的數據),它會在QueryString、Form、ServerVariable中都搜尋一遍。
而且有時候也會得到不同的結果。如果你僅僅是需要Form中的一個數據,但是你使用了Request而不是Request.Form,那麽程序將在QueryString、ServerVariable中也搜尋一遍。如果正好你的QueryString或者ServerVariable裏面也有同名的項,你得到的就不是你原本想要的值了。

在頁面間傳值,即值由一個頁面傳到另一個頁面,在另一個頁面可以用request()來接收值。在頁內傳值,即表單值提交給自身頁面,在自身頁面腳本裏面可以用request.form() 來接收值

1.Request.form方法,它是用來接收表單變量的(post 方法)
2.Request.QueryString方法, 它是接收URL參數的 (get 方法)
3.Request對象也可以不指明具體使用QueryString或是form方法,如request("變量"),因為它能自動識別,不過還是 指明為好,否則,要它自己判斷也得花些微時間,影響程序執行效率。Request:包含以上兩種方式(優先獲取GET方式提交的數據),它會在 QueryString、Form、ServerVariable中都搜尋一遍。
兩者除了接收方法不同外,還有傳遞數據量大小的問題,request.form方法能接收的數據沒有限制,而 request.QueryString只能接收數據量小於2KB數據,當然後者的執行速度要比前者快。一般往數據庫請求查詢時用 request.QueryString方法,因為查詢時只不過那麽幾個關鍵詞,沒有必要用request.form方法而導致查詢速度變慢。另 外,request.QueryString方法還會把數據信息顯示在客戶端瀏覽器地址欄中,安全性較差。 request.form方法不存在上述問 題,因此大量被應用在多個文本域提交數據和用戶登陸的場合

request.form()和request()的區別