Asp Object 之:AddHeader

來源:互聯網
上載者:User
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>

在前面的樣本中,頁被緩衝了,其結果是,直到此頁上所有的 ASP 指令碼執行後或 Flush 方法被調用後,伺服器才會將輸出發送到用戶端。帶緩衝的輸出中對 AddHeader 的調用可在指令碼的任何地方出現,只要在 Flush 調用之前即可。在前面的樣本中,若對 AddHeader 的調用在對 Flush 的調用之後出現,指令碼將產生一個執行階段錯誤。
您可以通過這一方法用不同的值發送同一標題的多份拷貝,比如用 WWW-Authenticate 標題。
樣本
下面這個樣本使用 AddHeader 方法要求用戶端使用 BASIC 驗證。<% Response.Addheader "WWW-Authenticate", "BASIC" %>

注意 前面的指令碼僅通知用戶端瀏覽器使用哪個驗證。若您在 Web 應用程式中使用該指令碼,則一定要啟用 Web 服務器的 BASIC 驗證。
應用於
Response 對象
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.