ASP 快速參考
來(lái)自 W3School 的 ASP 快速參考。打印出來(lái),放入口袋,以備隨時(shí)使用。
基礎(chǔ)語(yǔ)法
ASP 腳本由 <% 和 %> 包圍。這樣向?yàn)g覽器輸出內(nèi)容:
<html> <body> <% response.write("Hello World!") %> </body> </html>
ASP 中的默認(rèn)語(yǔ)言是 VBScript。如需使用其他腳本語(yǔ)言,請(qǐng)?jiān)?ASP 頁(yè)面頂端插入一段語(yǔ)言聲明:
<%@ language="javascript" %> <html> <body> <% .... %>
表單和用戶輸入
Request.QueryString 用戶收集 method="get" 的表單中的值。從表單通過(guò) GET 發(fā)送的信息對(duì)所有人都可見(jiàn)(將顯示在瀏覽器的地址欄中),對(duì)所發(fā)送的數(shù)據(jù)量也有限制。
Request.Form 用于收集 method="post" 的表單中的值。從表單通過(guò) POST 發(fā)送的信息對(duì)其他人是不可見(jiàn),對(duì)所發(fā)送的數(shù)據(jù)量沒(méi)有限制。
ASP Cookies
cookie 常用語(yǔ)識(shí)別用戶。cookie 是服務(wù)器嵌到用戶計(jì)算機(jī)上的小文件。每當(dāng)相同的計(jì)算機(jī)通過(guò)瀏覽器請(qǐng)求摸個(gè)頁(yè)面時(shí),也會(huì)發(fā)送 cookie。
Response.Cookies 命令用于創(chuàng)建 cookie:
<% Response.Cookies("firstname")="Alex" Response.Cookies("firstname").Expires="May 10,2012" %>
注釋:Response.Cookies 命令必須位于 <html> 標(biāo)簽之前!
"Request.Cookies" 命令用于取回 cookie 值:
<% fname=Request.Cookies("firstname") response.write("Firstname=" & fname) %>
引用文件
通過(guò) #include 指令,在服務(wù)器執(zhí)行前,您能夠把一個(gè) ASP 文件的內(nèi)容插入另一個(gè) ASP 文件中。#include 指令用于創(chuàng)建函數(shù)、頁(yè)頭、頁(yè)腳,或多個(gè)頁(yè)面上重復(fù)使用的元素。
語(yǔ)法:
<!--#include virtual="somefile.inc"-->
或者
<!--#include file ="somefile.inc"-->
請(qǐng)使用關(guān)鍵詞 virtual 來(lái)指示以虛擬目錄開始的路徑。如果名為 "header.inc" 的文件位于名為 /html 的虛擬目錄中,那么下面的代碼會(huì)插入 "header.inc" 的內(nèi)容:
<!-- #include virtual ="/html/header.inc" -->
請(qǐng)使用關(guān)鍵詞 file 來(lái)指示相對(duì)路徑。相對(duì)路徑以包含該引用文件的目錄開頭。如果您的文件位于 html 目錄中,而文件 "header.inc" 位于 html\headers 中,下面的代碼將在您的文件中插入 "header.inc" 的內(nèi)容:
<!-- #include file ="headers\header.inc" -->
請(qǐng)使用關(guān)鍵詞 file 與語(yǔ)法 (..\) 來(lái)引用更高層級(jí)目錄中的文件。
Global.asa
Global.asa 文件是可選文件,可包含能夠由 ASP 應(yīng)用程序中的每個(gè)頁(yè)面訪問(wèn)的對(duì)象聲明、變量以及方法。
注釋:Global.asa 文件必須存放在 ASP 應(yīng)用程序的根目錄中,而且每個(gè)應(yīng)用程序只能有一個(gè) Global.asa 文件。
Global.asa 文件只能包含以下內(nèi)容:
- Application 事件
- Session 事件
- <object> 聲明
- TypeLibrary 聲明
- #include 指令
Application 和 Session 事件
在 Global.asa 中,您可以告訴 application 和 session 對(duì)象當(dāng) application/session 開始時(shí)做什么,當(dāng) application/session 結(jié)束時(shí)做什么。完成該任務(wù)的代碼位于事件處理程序中。
注釋:在 Global.asa 文件中插入代碼時(shí),我們并不使用 <% 和 %>,我們需要在 HTML <script> 標(biāo)簽內(nèi)部放置子程序:
<script language="vbscript" runat="server"> sub Application_OnStart ' some code end sub sub Application_OnEnd ' some code end sub sub Session_OnStart ' some code end sub sub Session_OnEnd ' some code end sub </script>
<object> 聲明
通過(guò)使用 <object> 標(biāo)簽,也可以在 Global.asa 中創(chuàng)建帶有 session 或 application 作用域的對(duì)象。
注釋:<object> 標(biāo)簽應(yīng)該位于 <script> 標(biāo)簽之外!
語(yǔ)法:
<object runat="server" scope="scope" id="id" {progid="progID"|classid="classID"}> ....... </object>
TypeLibrary 聲明
TypeLibrary 是與 COM 對(duì)象對(duì)應(yīng)的 DLL 文件的內(nèi)容容器。通過(guò)在 Global.asa 文件中包含對(duì) TypeLibrary 的調(diào)用,就能夠訪問(wèn) COM 對(duì)象的常量,同時(shí) ASP 代碼也能夠更好地報(bào)告錯(cuò)誤。如果您的 Web 應(yīng)用程序依賴已在類型庫(kù)中聲明了數(shù)據(jù)類型的 COM 對(duì)象,您可以在 Global.asa 中聲明該類型庫(kù)。
語(yǔ)法:
<!-- METADATA TYPE="TypeLib" file="filename" uuid="typelibraryuuid" version="versionnumber" lcid="localeid" -->
Session 對(duì)象
Session 對(duì)象用于存儲(chǔ)有關(guān)用戶 session 的信息,或者更改其設(shè)置。Session 對(duì)象中存儲(chǔ)的變量存有關(guān)于單個(gè)用戶的信息,并且能夠由一個(gè)應(yīng)用程序中的所有頁(yè)面進(jìn)行訪問(wèn)。
集合
- Contents - 包含所有通過(guò)腳本命令追加到 session 的條目
- StaticObjects - 包含了所有使用 HTML 的 <object> 標(biāo)簽追加到 session 的對(duì)象
- Contents.Remove(item/index) - 從 Contents 集合刪除一個(gè)項(xiàng)目
- Contents.RemoveAll() - 從 Contents 集合刪除全部項(xiàng)目
屬性
- CodePage - 規(guī)定顯示動(dòng)態(tài)內(nèi)容時(shí)使用的字符集
- LCID - 設(shè)置用于顯示動(dòng)態(tài)內(nèi)容的區(qū)域標(biāo)識(shí)符
- SessionID - 返回 session id
- Timeout - 設(shè)置或返回 session 的超時(shí)時(shí)間
方法
- Abandon - 撤銷 session 對(duì)象中的所有對(duì)象。
Application 對(duì)象
在一起工作以完成某項(xiàng)任務(wù)的一組 ASP 文件被稱為一個(gè)應(yīng)用程序。ASP 中的 Application 對(duì)象用于將這些文件捆綁在一起。所有用戶捆綁一個(gè) Application 對(duì)象。Application 對(duì)象應(yīng)該存有被應(yīng)用程序中的許多頁(yè)面使用的信息(例如數(shù)據(jù)庫(kù)連接信息)。
集合
- Contents - 包含所有通過(guò)腳本命令追加到應(yīng)用程序中的項(xiàng)目
- StaticObjects - 包含所有使用 HTML 的 <object> 標(biāo)簽追加到應(yīng)用程序中的對(duì)象
- Contents.Remove - 從 Contents 集合中刪除一個(gè)項(xiàng)目
- Contents.RemoveAll - 從 Contents 集合中刪除所有的項(xiàng)目
方法
- Lock - 防止用戶修改 Application 對(duì)象中的變量
- Unlock - 允許用戶修改 Application 對(duì)象中的變量
Response 對(duì)象
Response 對(duì)象用于從服務(wù)器將輸出發(fā)送給用戶。
集合
Cookies(name) - 設(shè)置 cookie 的值。假如不存在,就創(chuàng)建 cookie ,然后設(shè)置指定的值。屬性
- Buffer - 規(guī)定是否緩沖輸出。當(dāng)輸出設(shè)置緩存時(shí),服務(wù)器會(huì)阻止向?yàn)g覽器的響應(yīng),直到所有的服務(wù)器腳本均被處理,或者直到腳本調(diào)用了 Flush 或 End 方法。如果要設(shè)置此屬性,它應(yīng)當(dāng)位于 .asp 文件中的 <html> 標(biāo)簽之前。
- CacheControl - 設(shè)置代理服務(wù)器是否可以緩存由 ASP 產(chǎn)生的輸出。如果設(shè)置為 Public,則代理服務(wù)器會(huì)緩存頁(yè)面。
- Charset(charset_name) - 將字符集的名稱追加到 Response 對(duì)象中的 content-type 報(bào)頭。
- ContentType - 設(shè)置 Response 對(duì)象的 HTTP 內(nèi)容類型。(比如 "text/html", "image/gif", "image/jpeg", "text/plain")。默認(rèn)是 "text/html"
- Expires - 設(shè)置頁(yè)面在失效前的瀏覽器緩存時(shí)間(分鐘)
- ExpiresAbsolute - 設(shè)置瀏覽器上頁(yè)面緩存失效的日期和時(shí)間
- IsClientConnected - 指示客戶端是否已從服務(wù)器斷開
- Pics(pics_label) - 向 response 報(bào)頭的 PICS 標(biāo)志追加值
- Status - 規(guī)定由服務(wù)器返回的狀態(tài)行的值
方法
- AddHeader(name, value) - 向 HTTP 響應(yīng)添加新的 HTTP 報(bào)頭和值
- AppendToLog string - 向服務(wù)器記錄項(xiàng)目(server log entry)的末端添加字符串
- BinaryWrite(data_to_write) - 在沒(méi)有任何字符轉(zhuǎn)換的情況下直接向輸出寫數(shù)據(jù)
- Clear - 清除已緩沖的輸出。使用該方法來(lái)處理錯(cuò)誤。如果 Response.Buffer 未設(shè)置為 true,該方法將產(chǎn)生 run-time 錯(cuò)誤
- End - 停止處理腳本,并返回當(dāng)前的結(jié)果
- Flush - 立即發(fā)送已緩存的輸出。如果 Response.Buffer 未設(shè)置為 true,該方法將產(chǎn)生 run-time 錯(cuò)誤
- Redirect(url) - 把用戶重定向到另一個(gè) URL
- Write(data_to_write) - 向用戶寫文本
Request 對(duì)象
當(dāng)瀏覽器從服務(wù)器請(qǐng)求頁(yè)面時(shí),就被稱為 request。request 對(duì)象用于獲取來(lái)自用戶的信息。
集合
- ClientCertificate - 包含了在客戶證書中存儲(chǔ)的字段值
- Cookies(name) - 包含 cookie 值
- Form(element_name) - 包含表單值。該表單必須使用 post 方法
- QueryString(variable_name) - 包含查詢字符串中的變量值
- ServerVariables(server_variable) - 包含服務(wù)器變量值
屬性
- TotalBytes - 返回在請(qǐng)求正文中客戶端所發(fā)送的字節(jié)總數(shù)
方法
- BinaryRead - 取回作為 post 請(qǐng)求的一部分而從客戶端送往服務(wù)器的數(shù)據(jù)
Server 對(duì)象
Server 對(duì)象用于訪問(wèn)服務(wù)器上的屬性和方法。
屬性
ScriptTimeout - 設(shè)置或返回一段腳本在終止前所能運(yùn)行多長(zhǎng)時(shí)間。方法
- CreateObject(type_of_object) - 創(chuàng)建對(duì)象的實(shí)例
- Execute(path) - 從 ASP 文件內(nèi)部執(zhí)行另一個(gè) ASP 文件。在被調(diào)用的 ASP 文件執(zhí)行完畢后,控制權(quán)返回原先的 ASP 文件
- GetLastError() - 返回描述所發(fā)生錯(cuò)誤的 ASPError 對(duì)象
- HTMLEncode(string) - 對(duì)字符串應(yīng)用 HTML 編碼
- MapPath(path) - 把相對(duì)或虛擬路徑映射為物理路徑
- Transfer(path) - 把所有狀態(tài)信息發(fā)送到另一個(gè)文件,以備處理。在傳送之后,程序的控制權(quán)不會(huì)返回原先的 ASP 文件
- URLEncode(string) - 對(duì)字符串應(yīng)用 URL 編碼規(guī)則
來(lái)源:http://www.dbjr.com.cn/asp/asp_quickref.asp