AddHeader
AddHeader 方法用指定的值添加 HTML 標題。該方法常常向響應添加新的 HTTP 標題。它並不替代現有的同名標題。一旦標題被添加,將不能刪除。
此方法僅供進階使用者使用。若其他 Response 方法提供了您所需的功能,建議您使用該方法。
文法Response.AddHeader name, value
參數
name
新的標題變數的名稱。
value
儲存在新的標題變數中的初始值。
注釋
為避免命名不明確,name 中不能包含任何底線 (_)。ServerVariables 集合將標題中的底線解釋為反斜線。例如,下面的指令碼使伺服器尋找一個名為 MY-HEADER 的標題名。<% Request.ServerVariables("HTTP_MY_HEADER") %>
由於 HTTP 協議要求所有的標題都必須在內容之前發送,所以您必須在任何的輸出(例如由 HTML 或 Write 方法產生的輸出)發送到用戶端之前在指令碼中調用 AddHeader。但當 Buffer 屬性被設定為 TRUE 時例外。若輸出被緩衝,那麼您就可以在指令碼中的任何地方調用 AddHeader 方法,只要它在 Flush 之前執行即可。否則,對 AddHeader 的調用將產生一個運行錯誤。
下面的兩個 .asp 檔案對這一點進行瞭解釋。-------file1.asp---------
<% Response.AddHeader "WARNING", "Error Message Text" %>
<HTML>
Some text on the Web page.
</HTML>
在前面的例子中,頁沒有緩衝。但是,因為在伺服器將輸出Some text on the Web page
發送到用戶端之前調用了 AddHeader 方法,所以指令碼能正常工作。如果調換一下順序,則對 AddHeader 方法的調用將產生一個執行階段錯誤。------file2.asp----------
<% Response.Buffer = TRUE %>
<HTML>
Here's some text on your Web page.
<% Response.AddHeader "WARNING", "Error Message Text" %> Here's some more interesting and illuminating text.
<% Response.Flush %>
<%= Response.Write("some string") %>
</HTML>