久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

ASP的對象結(jié)構(gòu)

 liuqg 2006-03-08

ASP的對象結(jié)構(gòu)

前面我們學(xué)習(xí)了ASP的基礎(chǔ)應(yīng)用,現(xiàn)在我們要系統(tǒng)地了解一下ASP的對象結(jié)構(gòu),,然后,,大家就可以舉一反三,不用我過多解釋每一個例子了,。這一部分,,可能有些困難,不過,,要學(xué)習(xí)東西,,是不能怕的,是不是,?

Request對象

Response對象

Application對象

Session對象

Server對象

一,、Request

Request對象把客戶信息保存在幾個集合中,,供ASP應(yīng)用使用。通用的訪問方法為:

Request.Collection("membername")

當(dāng)你不指定集合名時,,以(1)QueryString,(2)Form,(3)Cookie和(4)ServerVariable

的順序搜索所有集合,,當(dāng)發(fā)現(xiàn)第一個匹配的變量時,就認(rèn)定他是要引用的成員,。當(dāng)然,,為了提高效率,你最好顯式指定是那個集合中的成員,。

QueryString集合

當(dāng)HTML表單使用GET方法向ASP文件傳遞數(shù)據(jù)時,,數(shù)據(jù)被保存在集合QueryString中。其成員可以具有與之相關(guān)的多個值,,也就是說,,同一個表單中,多個元素可以有相同的名字,,下面的代碼訪問這些數(shù)據(jù):

<%For each item in Request.QueryString("Name")

Response.write Item &"<br>"

Next %>

Form集合

當(dāng)表單用POST方法時,,數(shù)據(jù)被保存在Form集合中。

ServerVariable集合

保存了隨HTTP請求一起傳送HTTP頭的信息,,可以通過他獲取有關(guān)瀏覽器的信息,,主要成員有:

REMOTE_ADDR 遠(yuǎn)程主機(jī)IP地址

REMOTE_HOST 遠(yuǎn)程主機(jī)名稱

REMOTE_USER 客戶名稱

REQUEST_METHOD 請求方法(如POST,GET,,HEAD)

SERVER_NAME 服務(wù)器名

SERVER_PROTOCOL 服務(wù)器版本號(如HTTP/1,。0)

 

二、Response對象

用來控制向客戶返回的HTML的內(nèi)容,,有若干屬性和方法,。下面介紹我認(rèn)為重要的:

Buffer屬性

如果為True,則Response的內(nèi)容要寫入緩沖區(qū),當(dāng)腳本處理完時再發(fā)給客戶,。

Status屬性

傳遞HTTP Response報(bào)文的狀態(tài),。服務(wù)器返回的狀態(tài)代碼由三位數(shù)字組成,可以用于測試階段和轉(zhuǎn)換控制到其他站點(diǎn)(即Forward)

Write方法

向客戶輸出HTML,,可以是任何合法的HTML腳本,。

Redirect方法

使瀏覽器重新定向到另外一個URL上,如:

<%browsetype=Request.ServerVariables("HTTP_USER_AGENT")

IF Left(browsetype,11)="Mozilla/2.0" then

Response.Redirect "FancyStart.asp"

Else

Response.Redirect "OldStart.asp"

End if%>

Clear方法

如果設(shè)Buffer屬性為True,,則Clear方法清楚所有緩沖區(qū)內(nèi)容。

Flush方法

將緩沖內(nèi)容立即發(fā)送給客戶,。

End方法

當(dāng)Active Server遇到該方法時,,立即停止處理ASP文件,如果有緩沖,,立即發(fā)送內(nèi)容到客戶,。

BinaryWrite方法

輸出二進(jìn)制數(shù)據(jù)

 

三,、Request對象和Response對象的Cookies集合

1.寫入Cookies

Response.Cookies("Cookie名稱")[("鍵名稱").屬性]=值

如果該Cookie已經(jīng)存在,則值被新值替代,,否則,,創(chuàng)建該cookie

例如:

<% Response.Cookies("NewCookie")="New Cookie Value" %>

2.讀取Cookies

如:

<%=Request.Cookies("NewCookie")%>

Cookie還有一些屬性,請參見有關(guān)資料,。

 

四,、Application對象

Active Server應(yīng)用程序是虛擬目錄及其子目錄下的所有文件,即一個WEB,??梢允褂肁pplication對象在應(yīng)用軟件的所有用戶中共享信息,并可以在服務(wù)器運(yùn)行期間持久地保存數(shù)據(jù),。他有一些控制訪問應(yīng)用層數(shù)據(jù)的方法和事件,。

Application本身沒有內(nèi)置屬性,可以有用戶定義:

Application("屬性名")=值

保存在Application對象中的數(shù)據(jù)可以被Application的所有用戶讀取,。如用來做訪問記數(shù):

Application("aVisits")=Application("aVisits")+1

方法有兩個:

Lock:

當(dāng)用戶調(diào)用Lock時,,只有當(dāng)前用戶能夠編輯或增加Application對象的屬性。

Unlock:

一定要記住,,調(diào)用了Lock,,完成時一定要調(diào)用Unlock.

事件也有兩個:

Application_OnStart事件:應(yīng)用程序啟動時調(diào)用。

Application_OnStart事件:應(yīng)用程序終止時調(diào)用,。

這兩個事件再加上Session的兩個事件的處理程序都放在文件Global.asp中,,一個Web應(yīng)用只有一個Global.asa文件,且放在該應(yīng)用的根目錄下,。一個Global.asp文件的例子如下:

<Script Language="VBScript" Runat="Server">

Sub Application_OnStart

Dim laChats(15)

Application("gaChats")=maChats

Application("giCounter")=0

End Sub

 

五,、Session對象

Active Server使用會話設(shè)置為使用應(yīng)用程序的單個用戶持久保持?jǐn)?shù)據(jù)。當(dāng)用戶請求Active Server應(yīng)用程序中ASP文件的URL時,,要啟動Session,。在缺省情況下,如果沒有用戶請求,,則服務(wù)器只保留Session20分鐘,。用戶也可以通過設(shè)Session的屬性TimeOut來改變?;蝻@示地調(diào)用Session.Abandon方法來釋放Session對象,。

SessionID屬性

唯一標(biāo)識一個會話的標(biāo)識符。

TimeOut屬性

定義Session保留的時限,,單位為分鐘,,如

Session.TimeOut=10

像Application一樣,Session也可由用戶來定義屬性,。

Session的唯一方法是Abandon,用來取消用戶的Session對象,,并釋放其占用的服務(wù)器資源,。如:

<%Session.Abandon%>

事件有Session_OnStart和Session_OnEnd,其處理程序應(yīng)放在文件Glabal.asa中。

 

六,、Server對象

1.HTMLEncode方法

對特定的字符串進(jìn)行HTML編碼,,如你本來要顯示下列內(nèi)容:

The Underline tag(<u></u>) is used to underline the surrounded text.

但很可能實(shí)際顯示成:

The Underline tag() is used to underline the surrounded text.

為了避免這種情況,可以調(diào)用Server對象的HTMLEncode方法,,如:

<%

Response.Write Server.HTMLEncode("The Underline tag(<U></U>) is used to underline the surrounded text.")

%>

2.URLEncode方法

根據(jù)URL規(guī)則對字符串進(jìn)行編碼,。當(dāng)字符串?dāng)?shù)據(jù)以URL格式傳遞到服務(wù)器時,串中間不能有空格,,不能有特殊字符,,這時,你就必須用URL編碼,。

3.CreateObject方法

用于創(chuàng)建已注冊到服務(wù)器機(jī)器上的ActiveX組件例程,,這恐怕是最重要的一個方法了:-)

句法如下:

Server.CreateObject("ComponentName")

可以作為例程啟動的組件可以是ActiveX能夠使用的所有內(nèi)置組件,實(shí)際上是存在于服務(wù)器上的任何ActiveX組件,。比如,,要使用金融計(jì)算,步驟如下:

1.創(chuàng)建對象

<%

set x=server.createobject("extend.financial");

%>

2.調(diào)用對象的方法

<%

set x=server.createobject("extend.financial")

response.write Format(x.futval(.07/12,200,-500),"###,###,##0.00")

%>

3.釋放例程

<%

set x=Nothing

%>

 

七,、FileSystem和TextStream對象

FileSystem和TextStream對象可用于建立對文件系統(tǒng)的訪問,,并提供順序訪問文件的機(jī)制。FileSystem沒有屬性,,只有兩個方法,,第一個方法是CreateTextFile方法,可以在宿主機(jī)上創(chuàng)建新的文本文件,,并返回TextStream對象以提供對新創(chuàng)建文件的訪問機(jī)制,。第二個是OpenTextFile方法,用于打開文本文件供順序訪問并返回一個TextStream對象,。如:

<%

set fsFilesys=CreateObject("Scripting.FileSystemObject")

set tsCoffee=fsFilesys.CreateTextFile("c:\coffe.txt",True)

tsCoffee.WriteLine("Man,I Could use some coffee.")

tsCoffee.Close

%>

TextStream對象的使用有:

AtEndOfLine:如果文件當(dāng)前字符處在行的末尾則返回true

AtEndOfScreen:如果當(dāng)前字符在文件的末尾則返回true

Column:返回當(dāng)前字符的列號

Line:返回當(dāng)前字符的行號

TextStream對象的方法為:

Close:關(guān)閉并釋放TextStream對象

Read:從一個文件中讀取給定個數(shù)的字符到一個變量中

ReadAll:讀取文件的全部內(nèi)容到一個變量中

ReadLine:讀取給定行號的內(nèi)容到一個變量中

Skip:跳過給定個數(shù)的字符

SkipLine:跳過給頂?shù)男袝?/p>

Write:寫如字符串

WriteLine:寫入以換行結(jié)束的字符串

WriteBlankLines:寫入給頂數(shù)量的空格

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多