![AspNet-第五講PPT課件_第1頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/10/ec12f05d-9026-429b-8f75-79e25bb0f66e/ec12f05d-9026-429b-8f75-79e25bb0f66e1.gif)
![AspNet-第五講PPT課件_第2頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/10/ec12f05d-9026-429b-8f75-79e25bb0f66e/ec12f05d-9026-429b-8f75-79e25bb0f66e2.gif)
![AspNet-第五講PPT課件_第3頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/10/ec12f05d-9026-429b-8f75-79e25bb0f66e/ec12f05d-9026-429b-8f75-79e25bb0f66e3.gif)
![AspNet-第五講PPT課件_第4頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/10/ec12f05d-9026-429b-8f75-79e25bb0f66e/ec12f05d-9026-429b-8f75-79e25bb0f66e4.gif)
![AspNet-第五講PPT課件_第5頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/10/ec12f05d-9026-429b-8f75-79e25bb0f66e/ec12f05d-9026-429b-8f75-79e25bb0f66e5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、2021/7/241第五章第五章Response、Request對象2021/7/242HttpResponse 9-1q HttpResponse 對象允許開發(fā)人員對當(dāng)前頁面的輸出流進(jìn)行訪問q 此類可用于:q從輸出頁面讀取/寫入文本q將用戶重新定向到另一個頁面q有條件地結(jié)束應(yīng)用程序連接q設(shè)置/獲取輸出內(nèi)容類型q檢查客戶端與服務(wù)器的連接狀態(tài)q讀取/寫入 Cookie2021/7/243HttpResponse:常用屬性 9-1屬性名稱說明Buffer 指定是否將 Web 窗體創(chuàng)建的輸出存儲在 IIS 緩存中,直到處理完當(dāng)前頁面中的所有服務(wù)器腳本ContentType 獲得或指定響應(yīng)的 HTTP
2、 內(nèi)容 (MIME) 類型為標(biāo)準(zhǔn) MIME 類型(如 text/xml 或 image/gif)。默認(rèn)的 MIME 類型是 text/html。客戶端瀏覽器從輸出流中指定的 MIME 類型獲得內(nèi)容的類型Cookie用于獲得 HttpResponse 對象的 Cookie 集合Expires 指定瀏覽器中緩存的頁面過期之前的時間(以分鐘為單位)Cache 獲得網(wǎng)頁的緩存策略(過期時間、保密性等)2021/7/244HttpResponse:常用屬性 9-2屬性名稱說明Output 啟用到輸出 HTTP 響應(yīng)流的文本輸出OutputStream 啟用到輸出 HTTP 內(nèi)容主體的二進(jìn)制輸出,并作為響
3、應(yīng)的一部分ContentType 獲得或指定響應(yīng)的 HTTP 內(nèi)容 (MIME) 類型為標(biāo)準(zhǔn) MIME 類型(如 text/xml 或 image/gif)。默認(rèn)的 MIME 類型是 text/html。客戶端瀏覽器從輸出流中指定的 MIME 類型獲得內(nèi)容的類型5HttpResponse:常用屬性 9-3方法方法說明說明Write用于向當(dāng)前 HTTP 響應(yīng)流寫入文本,使其成為返回頁面的一部分Clear清除前面的輸出內(nèi)容(結(jié)合圖片)End停止處理至客戶端的輸出,返回目前為止已創(chuàng)建的頁面內(nèi)容并觸發(fā) Application 對象的 EndRequest 事件 Application 對象將在第六階段
4、討論 Redirect將用戶從請求頁面重新定向或帶到另一頁面2021/7/246HttpResponse:常用屬性 9-6控件控件屬性屬性值值LabelIDlblHdrLabelBackColor#E0E0E0LabelTextResponse 對象的屬性及它們的值LabelIDlblResponseLabelBackColorLightBlue演示:示例 1HttpResponse 對象不同屬性的用法q 打開 VS.NET IDE 并創(chuàng)建名為Example 1 的新項(xiàng)目q 將默認(rèn) Web 窗體 (.aspx) 文件從Webform1.aspx重命名為ResponseProperties.as
5、pxq 通過向 Web 窗體添加兩個標(biāo)簽為 Web 窗體設(shè)計(jì)界面ResponseProperties.aspx 的 GUI 按照表中的內(nèi)容設(shè)置 ResponseProperties.aspx 上控件的屬性2021/7/247HttpResponse:常用屬性 9-7將下列代碼片段添加到頁面的 Load 事件中private void Page_Load(object sender, System.EventArgs e)lblResponse.Text=lblResponse.Text + HttpResponse.Buffer= + HttpContext.Current.Response.
6、Buffer + , ;lblResponse.Text=lblResponse.Text + HttpResponse.Cache= + HttpContext.Current.Response.Cache + , ;lblResponse.Text=lblResponse.Text + HttpResponse.CacheControl= + HttpContext.Current.Response.CacheControl + , ;lblResponse.Text=lblResponse.Text + HttpResponse.Charset= + HttpContext.Curren
7、t.Response.Charset + , ;lblResponse.Text=lblResponse.Text + HttpResponse.ContentType= + HttpContext.Current.Response.ContentType + , ;lblResponse.Text=lblResponse.Text + HttpResponse.Expires= + HttpContext.Current.Response.Expires + , ;lblResponse.Text=lblResponse.Text + HttpResponse.ExpiresAbsolute
8、= + HttpContext.Current.Response.ExpiresAbsolute + , ;lblResponse.Text=lblResponse.Text + HttpResponse.IsClientConnected= + HttpContext.Current.Response.IsClientConnected + , ;lblResponse.Text=lblResponse.Text + HttpResponse.StatusCode= + HttpContext.Current.Response.StatusCode + , ;lblResponse.Text
9、=lblResponse.Text + HttpResponse.StatusDescription= + HttpContext.Current.Response.StatusDescription + , ;lblResponse.Text=lblResponse.Text + HttpResponse.SuppressContent= + HttpContext.Current.Response.SuppressContent + , ;編譯并運(yùn)行示例2021/7/248HttpResponse:演示:屬性 9-8private void Page_Load(object sender,
10、 System.EventArgs e) lblResponse.Text=lblResponse.Text + HttpResponse. ContentType = + HttpContext.Current.Response.ContentType + , ; 顯示 Response 對象的不同屬性值2021/7/249HttpResponse:演示:方法 9-9private void btnRedirect_Click(object sender, System.EventArgs e)HttpContext.Current.Response.Redirect(this.txtURL
11、.Text.Trim();private void btnEnd_Click(object sender, System.EventArgs e) if(this.txtName_End.Text !=) HttpContext.Current.Response.Write(您好 “ +this.txtName_End.Text + , 歡迎學(xué)習(xí)HttpResponse! 這里采用Response.End()方法); Response.End(); private void btnSubmit_Click(object sender, System.EventArgs e)if(txtUser
12、Nm.Text !=) HttpContext.Current.Response.Write(您好 + txtUserNm.Text + , 歡迎學(xué)習(xí)HttpResponse!這里沒有采用Response.End() 方法);10HttpRequest 5-1服務(wù)器服務(wù)器域名URL,資源的名稱響應(yīng)這是 HTTP 請求這是 HTTP 響應(yīng)2021/7/2411HttpRequest 5-2 qHttpRequest 對象封裝客戶端請求頁面或提交表單時提供的信息。這些信息包括:q識別用戶和瀏覽器的 HTTP 變量q在客戶端瀏覽器上為網(wǎng)站存儲的 Cookieq作為查詢字符串或網(wǎng)頁 部分的 HTML
13、控件值添加到 URL 的值q如果是安全保護(hù)網(wǎng)站,有關(guān)網(wǎng)站安全的信息2021/7/2412HttpRequest 5-3屬性名稱屬性名稱說明說明Browser 獲得有關(guān)請求瀏覽器能力的信息Form 獲得網(wǎng)頁中定義的窗體變量的集合QueryString獲得以名/值對表示的 HTTP 查詢字符串變量的集合Params 獲得由以名/值對表示的 QueryString、Form、Cookie 和 ServerVariables 組成的集合 該表列出了 HttpRequest 對象的常用方法和屬性2021/7/2413HttpRequest 5-4Url返回有關(guān)當(dāng)前請求的 URL 信息方法名稱方法名稱說明
14、說明MapPath 將請求 URL 中提到的虛擬路徑映射到服務(wù)器上資源的實(shí)際物理路徑常用方法2021/7/2414HttpRequest 5-5private void Page_Load(object sender, System.EventArgs e)lblRequest.Text=lblRequest.Text + HttpRequest.Browser= + HttpContext.Current.Request.Browser + , ;lblRequest.Text=lblRequest.Text + HttpRequest.Url= + HttpContext.Current.
15、Request.Url + , ;lblRequest.Text=lblRequest.Text + HttpRequest.UserHostAddress= + HttpContext.Current.Request.UserHostAddress + , ;lblRequest.Text=lblRequest.Text + HttpRequest.UserHostName= + HttpContext.Current.Request.UserHostName + , ;編譯并運(yùn)行程序2021/7/2415HttpRequest 方法private void Page_Load(object
16、 sender, System.EventArgs e) HttpContext.Current.Response.Write(+ Server.HtmlEncode(MapPath(“RequestMethods.aspx”)+ 的輸出結(jié)果是: ); HttpContext.Current.Response.Write( + HttpContext.Current.Request.MapPath (RequestMethods.aspx).ToString() + ); Response.Write( + Server.HtmlEncode(MapPath(“”)+ 的輸出結(jié)果是: + +
17、HttpContext.Current.Request.MapPath()+ ); Response.Write( + Server.HtmlEncode (MapPath(“RequestMethods.aspx”)+ 的輸出結(jié)果是: + + + HttpContext.Current.Request.MapPath (RequestMethods.aspx).ToString() + ); 2021/7/2416HttpRequest:Querystring 提交前 private void btnSubmit_Click(object sender, System.EventArgs e
18、) string strURL=; strURL=TargetPage.aspx?Nm= + Server.UrlEncode(txtName.Text) + &pwd=+ Server.UrlEncode(this.txtPwd.Text) ; HttpContext.Current.Response.Redirect(strURL); 17HttpRequest:Querystring 提交后 private void Page_Load(object sender, System.EventArgs e)string userNm=HttpContext.Current.Requ
19、est.QueryStringNm;HttpContext.Current.Response.Write(歡迎 );HttpContext.Current.Response.Write(userNm);Response.Write (你的密碼是:+ Request.QueryStringpwd);2021/7/2418HttpServerUtility 對象 8-1Execute 方法和 Transfer 方法HTML 編碼方法MapPath 方法URLEncode 方法方法HttpServerUtility 類包含處理 Web 請求的方法2021/7/2419HttpServerUtilit
20、y 對象 8-2ExecuteTransferURL 參數(shù)指定的頁面處理完后,控制權(quán)會返回給先前的頁面或調(diào)用此方法的頁面,并且從此方法調(diào)用后的語句繼續(xù)執(zhí)行 URL 參數(shù)指定的頁面處理完后,控制權(quán)不會返回給先前的頁面,也不會返回給調(diào)用此方法的頁面,并且在新頁面完成執(zhí)行時結(jié)束 注意:Server 對象的 Transfer 方法和 Execute 方法僅用于 Web 窗體將 Transfer 方法的 preserveForm 參數(shù)設(shè)置為 True,可將窗體的 QueryString、ViewState 等信息提供給目標(biāo)窗體 Execute 方法和 Transfer 方法均會停止當(dāng)前頁面的執(zhí)行,并將用
21、戶帶到由此方法的參數(shù) URL 指定的頁面2021/7/2420HttpServerUtility 對象 8-3演示:示例 6private void btnExec_Click(object sender, System.EventArgs e) HttpContext.Current.Server.Execute (ResponseProperties.aspx); lblForExecute.Text=客戶端調(diào)用 Execute 方法之后!;private void btnTransfer_Click(object sender, System.EventArgs e) HttpConte
22、xt.Current.Server.Transfer (RequestProperties.aspx); lblForExecute.Text=“客戶端調(diào)用 Transfer 方法之后!;輸出結(jié)果2021/7/2421HttpServerUtility 對象 8-4HTMLEncode 方法:q 為了確保所有瀏覽器均能在 URL 字符串中正確地傳送文本,需要使用 HTML 編碼。HTMLEncode 方法正是起這個作用的q 例如,如果輸入文本包含 “”字符,此方法會將這些字符轉(zhuǎn)換為其對等的 HTML 字符,即分別為 < 和 >,以便瀏覽器將這些字符正確地顯示為“”HTM
23、LEncode(String)要編碼為 HTML 的文本用于將輸出存儲為 TextWriter 流 語法HTMLEncode(String,TextWriter)2021/7/2422HttpServerUtility 對象 8-5URLEncode 方法:q 在 HTML 編碼中,將文本編碼成相應(yīng)的 HTML 是為了在瀏覽器中正確地顯示 q 如果是要求可靠的 HTTP 傳輸通過 URL 將編碼文本從 Web 服務(wù)器傳送到客戶端,該怎么辦? q 可使用 URLEncode 方法實(shí)現(xiàn)此目的。它將文本編碼以便于通過 HTTP 進(jìn)行可靠的傳輸語法要編碼為 HTML 傳輸?shù)奈谋?用于將編碼輸出存儲為
24、TextWriter 流URLEncode(String,TextWriter)URLEncode(String)2021/7/2423HttpServerUtility 對象 8-6MapPath 方法:q Web 應(yīng)用程序位于 IIS 根目錄下的虛擬目錄中q 因此,我們請求網(wǎng)頁時,引用稱為“虛擬路徑”的虛擬目錄路徑。但是經(jīng)常需要得到 Web 服務(wù)器上的 Web 資源的實(shí)際物理路徑q 用 MapPath 方法,我們可從其虛擬路徑得到 Web 資源(如 .aspx 頁面)的物理路徑語法MapPath(string path)Web 服務(wù)器上的指定虛擬路徑2021/7/2424HttpServerUtility 對象 8-7HTMLEncode的使用private void Page_Load(object sender, System.Event
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 建筑與市政工程第三方質(zhì)量安全巡查的意義與作用
- 二零二五年度船舶配件五金采購合同范本6篇
- 2025版消防安全教育培訓(xùn)及演練驗(yàn)收合同3篇
- 石油工程師的工作總結(jié)
- 工業(yè)企業(yè)保安崗位職責(zé)
- 二零二五版衛(wèi)浴建材市場推廣與銷售合同3篇
- 二零二五版學(xué)生走讀課外實(shí)踐活動協(xié)議2篇
- 二零二五版水電站電力系統(tǒng)智能控制權(quán)轉(zhuǎn)讓協(xié)議3篇
- 2025版消防設(shè)備安裝及驗(yàn)收服務(wù)協(xié)議2篇
- 2025版專業(yè)園藝中心花卉種植與訂購合作協(xié)議3篇
- 高考寫作指導(dǎo)常見議論文論證方法知識梳理與舉例解析課件27張
- 寶鋼BQB 481-2023全工藝?yán)滠堉蓄l無取向電工鋼帶文件
- 車輛定損情況確認(rèn)書范本
- 玻璃反應(yīng)釜安全操作及保養(yǎng)規(guī)程
- 高中英語新課標(biāo)詞匯表(附詞組)
- 證券公司信用風(fēng)險和操作風(fēng)險管理理論和實(shí)踐中金公司
- 2022年高考湖南卷生物試題(含答案解析)
- GB/T 20909-2007鋼門窗
- GB/T 17854-1999埋弧焊用不銹鋼焊絲和焊劑
- GB/T 15593-2020輸血(液)器具用聚氯乙烯塑料
- 員工崗位能力評價標(biāo)準(zhǔn)
評論
0/150
提交評論