ASP.NET常見物件之Request與Response

gaibian0823發表於2015-07-28

    上一篇我們對ASP.NET中常見的內建物件做了概述,現在我們開始瞭解怎麼用,用哪裡,何時用,首先我們從Request和Response說起。

    大家在開發過程中,免不了會遇到這樣一個問題,就是從客戶端傳值到服務端,或者從服務端傳值到客戶端,在這裡我們用到的就是Request和Response。

           

一、Request

    1.Request物件:Request物件主要是讓伺服器取得客戶端瀏覽器的一些資料,包括從HTML表單用Post或者GET方法傳遞的引數、Cookie和使用者認證。

    2.Request封裝了客戶端請求資訊。Request的常見屬性如下:

屬性名

值型別

說明

ApplicationPath

String

獲取請求的資源在網站上的根路徑

ContentEncoding   

Encoding

設定請求物件的編碼

Cookies

HttpCookieCollection

客戶端傳送到伺服器的Cookie集合

QueryString

NameValueCollection

當前請求的查詢字串集合

UrlReferrer

Url

獲取使用者由哪個url跳轉到當前頁面

    Request的方法很少,只有一個BinaryRead()。

    3.因為Request物件是Page物件的成員之一,所以在程式中不需要做任何的宣告即可直接使用;

      (1).QueryString:用以獲取客戶端附在url地址後的查詢字串中的資訊(提交方式要設定為get)。

<span style="font-family:KaiTi_GB2312;font-size:18px;">          stra=Request.QueryString["strUserld"]</span>
      (2).Form:用以獲取客戶端在FORM表單中所輸入的資訊。(表單的method屬性值需要為POST,與Get方法相比較,使用Post方法可以將大量資料傳送到伺服器端)
<span style="font-family:KaiTi_GB2312;font-size:18px;">          stra=Request.Form["strUserld"]</span>

      (3).Cookies:用以獲取客戶端的Cookie資訊。

<span style="font-family:KaiTi_GB2312;font-size:18px;">          stra=Request.Cookies["strUserld"]</span>

      (4).ServerVariables:用以獲取客戶端發出的HTTP請求資訊中的頭資訊及伺服器端環境變數資訊。

<span style="font-family:KaiTi_GB2312;font-size:18px;">          stra=Request.ServerVariables["REMOTE_ADDR"]<span style="font-family:KaiTi_GB2312;"> //</span>返回客戶端IP地址</span>

      (5).ClientCertificate:用以獲取客戶端的身份驗證資訊     

<span style="font-family:KaiTi_GB2312;font-size:18px;">          stra=Request.ClientCertificate["VALIDFORM"]<span style="font-family:KaiTi_GB2312;"> //</span>對於要求安全驗證的網站,返回有效起始日期。</span>

    4.Request.Form用於表單提交方式為Post的情況,而Request.QueryString用於表單提交方式為Get的情況,如果用錯,則獲取不到資料。
      解決方法:利用Request(“元素名”)來簡化操作。

二、Response

    1.Response物件:用於用於動態響應客戶端請示,控制傳送給使用者的資訊,並將動態生成響應。輸出資料到客戶端,包括向瀏覽器輸出資料、重定向瀏覽器到另一個URL或向瀏覽器輸出Cookie檔案。

    2.Response常用屬性如下:

屬性名

值型別

說明

Charset

String

表示輸出流的所使用的字符集

ContentEncoding

Encoding

設定輸出流的編碼

ContentLengt

Int

輸出流的位元組大小

ContentType

string

輸出流的HTTP MIME型別

Output

TextWriter

伺服器響應物件的字元輸出流

Cookies

HttpCookieCollection

伺服器傳送到客戶端的Cookie集合

RedirectLocation

string

將當前請求重定向

Response常用方法

方法名

返回值型別

說明

AppendCookie

void

向響應物件的Cookie集合中增加一個Cookie

Clear

void

清空緩衝區中的所有內容輸出

Close

void

關閉當前伺服器到客戶端的連線

End

void

終止響應,並且將緩衝區中的輸出傳送到客戶端

Redirect

void

重定向當前請求

    3.Response.Write 變數資料或字串
      Response.Write (變數資料或字串)  

<span style="font-family:KaiTi_GB2312;font-size:18px;">      Response.Write("<script language=javascript>alert('歡迎學習ASP.NET')</script>")
      Response.Write("<script>window.open('WebForm2.aspx')</script>")</span>
    4.Response物件的Redirect方法將客戶端瀏覽器重定向到另外的URL上,即跳轉到另一個網頁。 
<span style="font-family:KaiTi_GB2312;font-size:18px;">      Response.Redirect("http://wangjinbo0823.blog.163.com/#m=0&t=0") </span>
    5.Response.End() 終止當前頁的執行
    6.Response.WriteFile(FileName)
      其中: FileName 指代需向瀏覽器輸出的檔案的檔名

    web伺服器收到客戶端的HTTP請求,會針對每一次請求分別建立一個用於代表請求的request物件和代表響應的response物件。

    1.要得到客戶機提交過來的資料,只需要找request物件就行了。

    2.要向客戶機輸出資料,只需要找response物件就行了。

相關文章