request本身是一個(gè)系統的(de)靜态對(duì)象,本身也(yě)可(kě)以作爲數組調用(yòng),比如
request("abc")就是獲取request數組中鍵值"abc"對(duì)應的(de)值,而這(zhè)個(gè)數組又不是固定的(de),而是多(duō)個(gè)數組的(de)集合,其中包含了(le)
(QueryString ,Form ,Cookies ,ClientCertificate,ServerVariables )這(zhè)幾個(gè)服務器變量數組的(de)值,也(yě)就是說,通(tōng)過request可(kě)以依次遍曆這(zhè)幾個(gè)數組并返回對(duì)應的(de)值,使用(yòng)起來(lái)很是方便,一勞永逸。
而request.form這(zhè)個(gè)request的(de)成員(yuán)函數就不是那麽寬泛的(de)取值了(le),僅僅是從form數組中取值,也(yě)就是頁面表單 标簽的(de)輸入單元(比如input type="text"傳遞過來(lái)的(de)值。那麽通(tōng)過form就無法獲取鏈接字符串中以index.asp?abc=123這(zhè)樣的(de)形式傳遞過來(lái)的(de)參數了(le)。
還(hái)有一種方法是request.QueryString("abc")這(zhè)種形式,可(kě)以獲取QueryString 鏈接字符串傳遞的(de)參數了(le)。
以http的(de)幾種傳遞數據機制來(lái)說,這(zhè)三種方法可(kě)以這(zhè)樣區(qū)分(fēn):
1、request.form可(kě)以獲取以post方式提交的(de)數據
2、requst.querystring可(kě)以獲取以get方法提交的(de)數據
3、request則是可(kě)以同時(shí)獲取兩種方法傳遞的(de)數據。
按照(zhào)傳遞數據量來(lái)說,request.form可(kě)以傳遞不限大(dà)小的(de)數據,而request.querystring隻能傳遞2k的(de)數據量。
按照(zhào)速度來(lái)說,request.qeurystring 會略快(kuài)于request.form