ASP六大對象介紹_第1頁
ASP六大對象介紹_第2頁
ASP六大對象介紹_第3頁
ASP六大對象介紹_第4頁
ASP六大對象介紹_第5頁
已閱讀5頁,還剩17頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、ASP六大對象介紹2006-05-15 09:38:49來源: aspcool網友評論1 條 論壇Application對象 Application對象是個應用程序級的對象,用來在所有用戶間共享信息,并可以在Web應用程序運行期間持久地保持數據。 Application的屬性: 方法如下: Application對象沒有內置的屬性,但是我們可以自行創建其屬性。 % Application("屬性名")=值 %> 其實大部分Application變量都存放在Contents集合中,當你創建一個新的Application變量時,其實就是在Contents集合中添

2、加了一項。下面兩個腳本是等效的: % Application("greeting")="hello!" %> 或 % Application.contents("greeting")="hello!"由于Application變量存在集合里,所以如果想要全部顯示,其方法我們已經多次使用,例如For Each循環。 % For Each item IN Application.Contents Response.write("br>"&item&Application.

3、Contents(item) next %> Application的方法: Application的方法只有兩個方法:一個是Lock,另一個是Unlock。其中Lock方法用于保證同一時刻只能一個用戶對Application操作。Unlock則用于取消Lock方法的限制。如: % Application.Lock Application("visitor_num")=Application("visitor_num")+1 Application.Unlock %> Application的事件: 1、Application_OnStart

4、() 當事件應用程序啟動時觸發。 2、Application_OnEnd() 此事件應用程序結束時觸發。 這兩個事件過程都是必須定義在Global.asp文件中,一般把連接數據的函數定義在這兩個事件,然后放在Global.asp中。例如: Sub Application_OnStart Application("tt18_ConnectionString") = "driver=SQL Server;server=jeff;uid=sa;pwd=;database=test" End Sub 一個數組能夠被定義成Application對象,不過這個數組只

5、能作為一個對象保存,而不能用Application(0)取出其值。可以定義一個臨時數組實現這種功能。如: % dim Array() Array=Application("array") for i = 0 to ubound(array) Response.write Array(i) next i %> 同樣要修改這個Application對象也可以定義一個臨時數組,把Application對象賦給數組,然后修改這個數組的元素,最后把數組賦回Application對象。如: % dim Array() Array=Application("array&q

6、uot;) Array(0)="jeff" Array(1)="zhu" Application.lock Application("array")=Array Application.unlock %> ObjectContext對象 該對象用于控制Active Server Pages的事務處理。事務處理由Microsoft Transaction Server (MTS)管理。 事件 ObjectContext.OnTransactionAbort 由放棄的事務處理事件激發,在腳本完成處理后發生。 ObjectContex

7、t.OnTransactionCommit 由成功的事務處理事件激發,在腳本完成處理后發生。 方法 ObjectContext.SetAbort 顯式的放棄一次事務處理。 ObjectContext.SetComplete 覆蓋前面任何調用ObjectContext.SetAbort方法的調用。 Request對象 Request對象用于接受所有從瀏覽器發往你的服務器的請求內的所有信息。 集合 Request.ClientCertificate(keySubField) 所有客戶證書的信息的集合。對于Key,該集合具有如下的關鍵字: Subject 證書的主題。包含所有關于證書收據的信息。能和

8、所有的子域后綴一起使用。 Issuer 證書的發行人。包含所有關于證書驗證的信息。除了CN外,能和所有的子域后綴一起使用。 VadidFrom 證書發行的日期。使用VBScript格式。 ValidUntil 該證書不在有效的時間。 SerialNumber 包含該證書的序列號。 Certificate 包含整個證書內容的二進制流,使用ASN.1格式。 對于SubField,Subject和Issuer關鍵字可以具有如下的子域后綴:(比如:SubjectOU或IssuerL) C 起源國家。 O 公司或組織名稱。 OU 組織單元。 CN 用戶的常規名稱。 L 局部。 S 州(或省)。 T 個人

9、或公司的標題。 GN 給定名稱。 I 初始。 當文件cervbs.inc(VBScript使用)或cerjavas.inc(Jscript使用)通過使用#INCLUDE導向包含在你的Active Server Page里時,下面兩個標志可以使用: ceCertPresent 指明客戶證書是否存在,其值為TRUE或FALSE。 ceUnrecongnizedIssure 指明在該鏈表中的最后的證書的發行者是否未知,其值為TRUE或FALSE。 Request.Cookies(Cookie(key).Attribute) Cookie的集合。允許獲得瀏覽器的Cookie。Cookie指明返回那一個

10、Cookie。Key用于從Cookie字典中返回具有某一關鍵字的Cookie值。對于Attribute,你能使用屬性HasKeys來確定某一Cookie是否具有子關鍵字。HasKeys的值為TRUE或FALSE。 Request.Form(Parameter)(Index).Count 填寫在HTML的表單中所有的數據的集合。Parameter是在HTML表單中某一元素的名稱。當某一參數具有不止一個值(比如,當在SELECT>中使用MULTIPLE屬性時)時,使用Index。當某一參數具有多值時,Count指明多值個數。 Request.QueryString(Varible)(Inde

11、x).Count 查詢字符串的所有值的集合。Varible是在查詢字符串某一變量的名稱。當某一變量具有多于一個值時,使用Index。當某一參數具有多值時,Count指明值的個數。 Request.ServerVaribles(Server Environment Variable) 環境變量的集合。允許讀取HTTP頭。你可以通過使用HTTP_前綴來讀取任何頭信息。比如,HTTP_USER_AGENT接受客戶代理HTTP頭(瀏覽器類型)。除此外,你可以使用下表所示的變量獲得任何環境信息。 ALL_HTTP 客戶端發送的所有HTTP標頭,他的結果都有前綴HTTP_。 ALL_RAW 客戶端發送的所

12、有HTTP標頭,其結果和客戶端發送時一樣,沒有前綴HTTP_ APPL_MD_PATH 應用程序的元數據庫路徑。 APPL_PHYSICAL_PATH 與應用程序元數據庫路徑相應的物理路徑。 AUTH_PASSWORD 當使用基本驗證模式時,客戶在密碼對話框中輸入的密碼。 AUTH_TYPE 這是用戶訪問受保護的腳本時,服務器用于檢驗用戶的驗證方法。 AUTH_USER 代驗證的用戶名。 CERT_COOKIE 唯一的客戶證書ID號。 CERT_FLAG 客戶證書標志,如有客戶端證書,則bit0為0。如果客戶端證書驗證無效,bit1被設置為1。 CERT_ISSUER 用戶證書中的發行者字段。

13、 CERT_KEYSIZE 安全套接字層連接關鍵字的位數,如128。 CERT_SECRETKEYSIZE 服務器驗證私人關鍵字的位數。如1024。 CERT_SERIALNUMBER 客戶證書的序列號字段。 CERT_SERVER_ISSUER 服務器證書的發行者字段 CERT_SERVER_SUBJECT 服務器證書的主題字段。 CERT_SUBJECT 客戶端證書的主題字段。 CONTENT_LENGTH 客戶端發出內容的長度。 CONTENT_TYPE 客戶發送的form內容或HTTP PUT的數據類型。 GATEWAY_INTERFACE 服務器使用的網關界面。 HTTPS 如果請求

14、穿過安全通道(SSL),則返回ON。如果請求來自非安全通道,則返回OFF。 HTTPS_KEYSIZE 安全套接字層連接關鍵字的位數,如128。 HTTPS_SECRETKEYSIZE 服務器驗證私人關鍵字的位數。如1024。 HTTPS_SERVER_ISSUER 服務器證書的發行者字段。 HTTPS_SERVER_SUBJECT 服務器證書的主題字段。 INSTANCE_ID IIS實例的ID號。 INSTANCE_META_PATH 響應請求的IIS實例的元數據庫路徑。 LOCAL_ADDR 返回接受請求的服務器地址。 LOGON_USER 用戶登錄Windows NT的帳號 PATH_

15、INFO 客戶端提供的路徑信息。 PATH_TRANSLATED 通過由虛擬至物理的映射后得到的路徑。 QUERY_STRING 查詢字符串內容。 REMOTE_ADDR 發出請求的遠程主機的IP地址。 REMOTE_HOST 發出請求的遠程主機名稱。 REQUEST_METHOD 提出請求的方法。比如GET、HEAD、POST等等。 SCRIPT_NAME 執行腳本的名稱。 INSTANCE_ID IIS實例的ID號。 INSTANCE_META_PATH 響應請求的IIS實例的元數據庫路徑。 LOCAL_ADDR 返回接受請求的服務器地址。 LOGON_USER 用戶登錄Windows N

16、T的帳號 PATH_INFO 客戶端提供的路徑信息。 PATH_TRANSLATED 通過由虛擬至物理的映射后得到的路徑。 QUERY_STRING 查詢字符串內容。 REMOTE_ADDR 發出請求的遠程主機的IP地址。 REMOTE_HOST 發出請求的遠程主機名稱。 REQUEST_METHOD 提出請求的方法。比如GET、HEAD、POST等等。 SCRIPT_NAME 執行腳本的名稱。 SERVER_NAME 服務器的主機名、DNS地址或IP地址。 SERVER_PORT 接受請求的服務器端口號。 SERVER_PORT_SECURE 如果接受請求的服務器端口為安全端口時,則為1,否

17、則為0。 SERVER_PROTOCOL 服務器使用的協議的名稱和版本。 SERVER_SOFTWARE 應答請求并運行網關的服務器軟件的名稱和版本。 URL 提供URL的基本部分。 方法 Request.BinaryRead(Count) 接收一個HTML表單的未經過處理的內容。當調用此方法時,Count指明要接收多少字節。在調用此方法后,Count指明實際上接收到多少個字節。 屬性 Request.TotalBytes 查詢體的長度,以字節為單位 Response對象 Response對象用于向客戶端瀏覽器發送數據,用戶可以使用該對象將服務器的數據以HTML的格式發送到用戶端的瀏覽器,它與

18、Request組成了一對接收、發送數據的對象,這也是實現動態的基礎。下面介紹它常用的屬性和方法。 1、Buffer屬性 該屬性用于指定頁面輸出時是否要用到緩沖區,默認值為False。當它為True時,直到整個Active Server Page執行結束后才會將結果輸出到瀏覽器上。如: %Response.Buffer=True%> html> Head> title>Buffer示例/title> /head> body> % for i=1 to 500 response.write(i & "br>") next

19、%> /body> /html> 這頁執行時,整個主頁的所有內容會同時顯示在瀏覽器上,這個主頁會存在緩存區中直到腳本執行結束。 2、Expires屬性 該屬性用于設置瀏覽器緩存頁面的時間長度(單位為分),必須在服務器端刷新。通過如下設置: %Response.Expires=0%> 通過在ASP文件中加入這一行代碼,要求每次請求是刷新頁面,因為Response一收到頁面就會過期。 3、Write方法 該方法把數據發送到客戶端瀏覽器,如: %Response.write "Hello,world!"%> 4、Redirect方法 該方法使瀏覽器可

20、以重新定位到另一個URL上,這樣,當客戶發出Web請求時,客戶端的瀏覽器類型已經確定,客戶被重新定位到相應的頁面。如: 這個例子當用戶選擇了以后,按"Jump"按鈕提交表單,服務器接到申請后調用formjump.asp判斷后定位到相應的URL。不過這里有一點要注意,HTTP標題已經寫入到客戶瀏覽器,任何HTTP標題的修改必須在寫入頁內容之前,遇到這種問題時,可以如下做: 在文件的開始 Language=.>后寫: Response.Buffer=True 在結尾定: Response.Flush 這里Flush是Response的一個方法,它必須是Buffer屬性設置

21、為True時才能使用,否則會產生一個運行模式錯誤。另外一個Clear方法也是用于清除被緩存的頁面,同樣要Buffer屬性設置為True時才能使用。 5、End方法 該方法用于告知Active Server當遇到該方法時停止處理ASP文件。如果Response對象的Buffer屬性設置為True,這時End方法即把緩存中的內容發送到客戶并清除沖區。所以要取消所有向客戶的輸出民,可以先清除緩沖區,然后利用End方法。如: % Response.buffer=true On error resume next Err.clear if Err.number>0 then Response.Clear Response.End end if %&g

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論