標籤:request response server application objectcontent
ASP提供的可用在指令碼中的內建對象,使使用者更容易的收集通過瀏覽器請求發送的資訊、響應瀏覽器以及儲存使用者資訊,簡化了開發人員的工作。
常見內建對象如下:
- Request 對象,用於訪問任何使用HTTP請求傳遞的資訊。
- Response 對象,用於控制發送給瀏覽器的資訊。
- Server 對象,用於訪問伺服器上的方法和屬性。
- Application 對象,用於共用應用程式資訊。
- ObjectContent 對象,用於控制ASP指令碼初始化事務。
每個內建對象都有各自的屬性(Property)、方法(Method)、集合(Collection)或事件(Event)。屬性用於描述內建對象的特性,方法用於執行內建對象的動作,集合是包含特定資料的容器,事件是在某種情況下發生的特定的操作。
Request(請求) 對象
Request 對象,用於在HTTP請求期間,訪問任何用戶端瀏覽器傳遞給伺服器的資訊,包括通過url傳遞的參數資訊、使用GET方法或POST方法傳遞的HTML表單資料、Cookie和使用者認證資訊等。
Request 對象的文法格式如下:
Request[.collection|property|method](variable)
文法說明如下:
- collection,對象的集合成員。Request對象主要包括如下:
- ClientCertificate集合,擷取驗證欄位資訊。
- Cookies集合,擷取Cookie資料。
- QueryString集合,擷取用戶端附在URL地址後的參數。
- Form 集合,用於擷取用戶端在Form表單中所輸入的資訊。(表單method屬性值為POST)
- ServerVariables集合,擷取伺服器端環境變數及用戶端發出的HTTP請求資訊中的頭資訊。
- property,對象的屬性成員。Request對象包括以下一個屬性:
- method,對象的方法成員。Request對象包括以下一個方法:
讀取Cookie資料
Cookie是網站中的一些標記,用來記錄使用者在網站中曾經輸入的資料。使用Cookie可以有效減少使用者輸入資料的次數,簡化使用者操作。Cookies集合允許使用者讀取在HTTP請求中發送的所有的Cookie資料。Cookies集合的文法格式如下:
Request.Cookies(cookie)[(key)|.attribute]
參數說明:
- key,指定Cookie的關鍵字名稱,與同名的Cookie使用關鍵字來區分。
- attribute,Cookie的屬性,可取屬性如下:
- HasKeys,指定Cookie是否包含關鍵字。
- Path,指定讀取Cookie的路徑。
- Secure,指定Cookie是否安全。
讀取Cookie
if (Request.Cookies["username"]!=null ){ string username =Request.Cookies["username"].Value ;}if (Request .Cookies ["LoginInfo"]!=null ){ string username=Request .Cookies["LoginInfo"]["username"]; string password =Request.Cookies["LoginInfo"]["password"];}
讀取表單傳遞的資料
使用者可以通過表單向伺服器提交資料,表單中可以包含文本、文字框、複選框、選項按鈕、按鈕、文本地區等元素。將表單提交伺服器有GET和POST兩種方法。當通過使用POST方法提交資料的時候,必須使用Form集合來檢索在HTTP請求中發送的表單資料。
Form 集合的文法格式:
Request.Form(parameter)[(index)|.attribute]
參數說明:
- index,要讀取參數的索引。
- attribute,參數屬性(Count,參數個數)。
如下例,添加新讀者:
Addreader.aspx
<formmethod="post" name="faddreader" class="contact"id ="faddreader"><h2class="text3">添加 <span>讀者資訊</span></h2><label>帳號:</label><inputname="reaID" type="text" id="reaID" /><label>姓名:</label><inputname="reaName" type="text" id="reaName" /><label>學院:</label><inputname="reaDepartment" type="text"id="reaDepartment" /> <label>專業:</label><inputname="reaMajor" type="text" id="reaMajor" /><inputname="submit" type="submit" class="submit"id="submit" value="註冊" title="註冊" /><inputname="reset" type="reset" class="reset"id="reset" value="取消" title="Reset" onclick="location.href='LibraryManage.aspx'"/></form>
Addreader.aspx.cs
protected voidPage_Load(object sender, EventArgs e){ if(!string.IsNullOrEmpty(Request.Form["reaID"])) { Reader reader = new Reader(); reader.ReaderId =Request.Form["reaID"]; reader.ReaderName =Request.Form["reaName"]; reader.ReaderDepartment =Request.Form["reaDepartment"]; reader.ReaderMajor =Request.Form["reaMajor"]; ReaderBLL readerbll = new ReaderBLL(); bool flag = false; flag = readerbll.AddReader(reader); string msg; //添加成功,提示 if (flag) { msg = "添加成功!"; } else { msg = "添加失敗!"; }Response.Write("<script>javascript:alert('"+ msg.ToString() +"');location.href='LibraryManage.aspx';</script>"); }}
效果如下:
讀取URL傳遞的參數/頁面重新導向
使用者可以通過表單想伺服器提交資料,也可以通過URL參數的方式向伺服器提交資料。QueryString集合允許使用者檢索在HTTP請求中,使用URL測試方式提交的字串資料,或使用GET方式提交的表單中的元素資料。
讀取URL傳遞的參數
<span style="font-size:24px;">string key =Server.UrlDecode(Request.QueryString["key"]);</span>
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。
ASP內建對象—Request、Response 、Server、Application 、ObjectContent(一)