iT邦幫忙

第 11 屆 iT 邦幫忙鐵人賽

DAY 19
0

本篇擷取重點:

  1. Response物件
  2. Response物件的常用屬性及方法

一、Response物件

Response物件是 ASP 的內建物件之一,用於將資料從伺服器傳送回瀏覽器,包括網頁伺服器所要回應給使用者的各項資訊,包含用來在頁面中輸入資料,在頁面跳轉並傳遞引數即將資訊寫入用戶端電腦的硬碟內寫入Cookies...等。

https://ithelp.ithome.com.tw/upload/images/20190921/20120056krwDEgdPQk.jpg

參考資料:
https://www.itread01.com/content/1545406401.html
https://dotblogs.com.tw/marcus116/archive/2011/04/30/23943.aspx


二、Response物件的常用屬性及方法

  1. 常用屬性
屬性 說明
Bufferoutput 是否使用緩衝區,預設為TRUE,如果不使用緩衝區,請設為False。
Cache 取得網頁的快取原則 (例如,到期時間、隱私權設定...等)
Expires 設定網頁在Cache中的保留期限,以分鐘為單位
ExpiresAbsolute 設定網頁在Cache中的最後保留日期
Cookies 設定客戶瀏覽器中的的Cookie
Charset 設定或獲取HTTP的輸出字串編碼
IsClientConnected 取得客戶端是否仍然和Server連線

==================================================================
貼心小補充:

Buffer是什麼?

https://ithelp.ithome.com.tw/upload/images/20190921/20120056M78cJO0DV6.png

情境一、若 Response.BufferOutput = false;(代表不使用緩衝區,意即一有要輸出的資料就直接向客戶端的瀏覽器發送。)

簡單來說,就是一筆一筆地陸續顯示在頁面上

情境二、若 Response.BufferOutput = true;(代表使用緩衝區,意即將收到的網頁內容先暫存在伺服器緩衝區內,待ASP.NET程式執行完後,一併才送到客戶端柳覽器顯示。)

簡單來說,就是待所有資料都收齊後才一併顯示在頁面上

參考資料:
http://wayne.cif.takming.edu.tw/aspprog/ASP09.pdf (大推薦)

==================================================================


  1. 常用方法
方法 說明
Write 輸出String到客戶端
WriteFile 讀入資料檔
Redirect 轉換網頁
Flush 當BufferOutput 為True,輸出緩衝區所有內容,若沒設定,則是等所有任務都執行完之後才將所有Response.Write一起輸出
End 將目前暫存區內容輸出至瀏覽器後,停止將buffer中的資料傳給瀏覽器
ClearContent 清除Buffer中的內容

==================================================================
貼心小補充:

原則上,在使用緩衝區為前提下(Response.BufferOutput = true),可搭配下方的方法使用:

  1. Response.Flush():將目前緩衝區內的輸出內容立即發送至客戶端的瀏覽器中顯示。(如果在每一句 Response.Write 後面加上 Response.Flush(),那麼基本上效果等於Response.BufferOutput=false,意即一有要輸出的資料就直接向客戶端的瀏覽器發送。)

  2. Response.End():將目前緩衝區內的輸出內容立即發送至客戶端的瀏覽器中顯示,但之後的程式碼或HTML標籤就不會繼續執行或顯示了,意即中斷ASP.NET程式的執行。

  3. Response.Clear():清除伺服器緩衝區中的內容,也就是说已經暫存在緩衝區但還没有發送到客户端的輸出内容都會被清除。

參考資料:
https://adon988.logdown.com/posts/7700746-asp-dot-net-buffer-flush

==================================================================


此篇內容整理自多篇網路文章、PPT及自己的理解,但筆者也仍處在初階的學習過程,對程式概念的理解及判斷都尚不足,若有錯誤的地方,也煩請各位大大提點,先謝謝大家惹!!


明日(9/21)預定探討課題:

  • Server物件

後日(9/22)預定探討課題:

  • 網頁常用物件-網頁跳轉的比較及實際範例說明

上一篇
[ASP.NET] 網頁常用物件-初淺談Request物件
下一篇
[ASP.NET] 網頁常用物件-初淺談Server物件
系列文
ASP.NET Web Form 入門30天30

尚未有邦友留言

立即登入留言