一、ASP基礎(chǔ)。ASP是Ff1ML代碼與程序代碼的結(jié)合體,下面找們就來(lái)學(xué)習(xí)ASP的相關(guān)知識(shí)。
(1).i1ML代碼和ASI中的程序代碼
與一般的應(yīng)用程序不同,asp 程序不需要編譯。其控制部分采用VBScript、]avaScript等腳本語(yǔ)言編寫(xiě),程序部分由Web解釋執(zhí)行。當(dāng)網(wǎng)站執(zhí)行時(shí),腳本程序會(huì)將一組命令發(fā)送給腳本解釋器,由腳本解釋器翻譯,轉(zhuǎn)換成服務(wù)器端可以執(zhí)行的命令。 AS!本身并不是一種腳本語(yǔ)言,它只是提供了一個(gè)環(huán)境,讓嵌入在HTML頁(yè)面中的腳本程序可以運(yùn)行。如果瀏覽器向web服務(wù)器請(qǐng)求.which文件,web服務(wù)器會(huì)先讀取.na文件,遇到if標(biāo)簽,直接將讀取的內(nèi)容傳遞給瀏覽器。如果遇到.呵呵標(biāo)簽,%和%會(huì)把里面的內(nèi)容當(dāng)作一個(gè)程序,然后解釋執(zhí)行。因此,^ASP和HML的區(qū)別可以概括為:寫(xiě)在%和%"之間的內(nèi)容是^ASP的程序代碼部分,程序由Web服務(wù)器解釋執(zhí)行,不會(huì)下載到瀏覽器. 別人家的密碼是保密的。
通過(guò)在HIML 文檔中添加ASP 代碼,可以創(chuàng)建動(dòng)態(tài)的交互式網(wǎng)頁(yè)。 ASP 代碼可以放在網(wǎng)頁(yè)中任何你想顯示其結(jié)果的地方。但需要注意的是,用于在用戶(hù)瀏覽器上顯示信息的ASP代碼必須放在“和”標(biāo)記之間。其具體操作如下: (1)確定要插入到ASP代碼中的位盆,以及輸入%; (2) 提取ASP代碼,選擇ASP代碼結(jié)束點(diǎn)的%; (3) 保存ASP頁(yè)面,當(dāng)用戶(hù)在瀏覽器上顯示包含ASP代碼的網(wǎng)頁(yè)時(shí),Web服務(wù)器首先將用于創(chuàng)建網(wǎng)頁(yè)的HTML 代碼發(fā)送到瀏覽器,然后處理ASP 分隔符之間的ASP 代碼,并使用代碼生成的結(jié)果替換那個(gè)ASP 代碼。隨后,ASP 代碼的結(jié)果將返回給瀏覽器將其作為HTML 代碼,瀏覽器將讀取所有HTML 代碼并將此頁(yè)面顯示在用戶(hù)屏幕上。
二、冉占P內(nèi)趁對(duì)象
ASP的功能是通過(guò)ASP的內(nèi)置對(duì)象來(lái)實(shí)現(xiàn)的。在面向?qū)ο缶幊讨校瑢?duì)象是一組數(shù)據(jù)和定義在該數(shù)據(jù)集上的一組操作的集合。對(duì)象設(shè)置為特定類(lèi)型。在對(duì)象中,客戶(hù)端使用對(duì)象的服務(wù),通過(guò)一組與兩者相關(guān)的方法或接口來(lái)訪問(wèn)對(duì)象的數(shù)據(jù)。然后客戶(hù)端可以調(diào)用這些方法來(lái)執(zhí)行某些操作。 ActiveX 控件是構(gòu)建Web 應(yīng)用程序的關(guān)鍵。這些控件實(shí)現(xiàn)了在腳本中執(zhí)行任務(wù)的對(duì)象。 ActiveX 控件是一個(gè)文件,其中包含執(zhí)行某項(xiàng)任務(wù)或某組任務(wù)的代碼。由于控件可以執(zhí)行常見(jiàn)的任務(wù),程序員不必自己創(chuàng)建代碼來(lái)執(zhí)行這些任務(wù),而是可以將控件用作腳本和基于Web 應(yīng)用程序的基本構(gòu)建塊。即使是新手腳本編寫(xiě)者也可以在不知道控件如何工作的情況下編寫(xiě)腳本,只要他知道如何訪問(wèn)控件提供的對(duì)象即可。簡(jiǎn)而言之,控件使您無(wú)需學(xué)習(xí)編程即可編寫(xiě)功能強(qiáng)大的腳本。控件是包含在動(dòng)態(tài)鏈接庫(kù).dllU 或可執(zhí)行文件.exe 中的可執(zhí)行代碼,它提供一個(gè)或多個(gè)對(duì)象及其方法和屬性。要使用控件提供的對(duì)象,您應(yīng)該創(chuàng)建對(duì)象提供的實(shí)例并為這個(gè)新實(shí)例分配一個(gè)變量名。 ASP 提供在腳本中使用的對(duì)象。這些對(duì)象使用戶(hù)可以更方便地收集通過(guò)瀏覽器請(qǐng)求發(fā)送的信息、響應(yīng)瀏覽器和存儲(chǔ)用戶(hù)信息,從而將ASP 網(wǎng)站開(kāi)發(fā)人員從大量繁瑣的工作中解放出來(lái)。目前的ASP版本一共提供了5個(gè)內(nèi)置對(duì)象,具體學(xué)習(xí)如下。
(1) 響應(yīng)對(duì)象
Response的中文更像是“回應(yīng)”。對(duì)于wshan服務(wù)器來(lái)說(shuō),響應(yīng)就是回復(fù)瀏覽器請(qǐng)求的文件或數(shù)據(jù)。如果瀏覽器請(qǐng)求的是html文件,那么web服務(wù)器不需要執(zhí)行任何程序,只要將html文件下載到瀏覽器即可,但是如果瀏覽器請(qǐng)求的是sp文件,則web服務(wù)器會(huì)解釋并執(zhí)行asp文件中的程序。那么如何將一些需要從ASP服務(wù)器執(zhí)行程序中提取出來(lái)的數(shù)據(jù)傳輸?shù)綖g覽器中,并顯示在瀏覽器中呢? Buffer 屬性表示是否使用緩沖頁(yè)來(lái)提取。如果為T(mén)rue,則將Resporwe內(nèi)容寫(xiě)入緩沖區(qū)。腳本處理完成后,將發(fā)送給用戶(hù)。當(dāng)提取緩沖頁(yè)面時(shí),只有當(dāng)當(dāng)前頁(yè)面的所有服務(wù)器腳本都處理完,并調(diào)用Flush或End方法后,服務(wù)器才會(huì)將響應(yīng)發(fā)送給客戶(hù)端瀏覽器。因此Z Response的Buffer屬性應(yīng)該設(shè)置在.sap文件的第一行。
(2)請(qǐng)求對(duì)象
Request對(duì)象對(duì)應(yīng)Respo,Response的目的是傳遞給瀏覽器,Request用于讀取和瀏覽
器的,共同實(shí)現(xiàn)瀏覽器與Web服務(wù)器的交互。使用Request對(duì)象訪問(wèn)任何基于HTTP者求傳遞的信息,包括從HTML表格用POST方法或GET方法傳遞的參數(shù)、cookie和用戶(hù)認(rèn)正,Request對(duì)象使你的程序能夠接收客戶(hù)端瀏覽器發(fā)送給Web服務(wù)器的數(shù)據(jù)。可以使用Request對(duì)象訪問(wèn)任何基于HTI,請(qǐng)求傳遞的所有信息,包括從HTML表格用l幻51,方法或GET方法傳遞的參數(shù)、cookie和用戶(hù)認(rèn)證。Request對(duì)象使您能夠訪問(wèn)客戶(hù)端發(fā)送給服務(wù)器的二進(jìn)制數(shù)據(jù)。 (3) Cookies什么是Cookie? Cookie其實(shí)是一個(gè)標(biāo)簽,當(dāng)你訪間一個(gè)需要唯一標(biāo)識(shí)你的站址的Weh站點(diǎn)時(shí),它會(huì)在你的硬盤(pán)上留下一個(gè)標(biāo)記.下一次你訪問(wèn)同一個(gè)站點(diǎn)時(shí),站點(diǎn)的頁(yè)面會(huì)查找這個(gè)標(biāo)記。每個(gè)Web站點(diǎn)都有自己的標(biāo)記,標(biāo)記的內(nèi)容可以隨時(shí)讀取.但只能由該站點(diǎn)的頁(yè)面完成。每個(gè)站點(diǎn)的Cookie與其他所有站點(diǎn)的0ookie存在同一文件夾中的不同文件內(nèi)(你可以在Windo。的目錄下的Cookie文件夾中找到它們)。一個(gè)Cookie就是一個(gè)唯一標(biāo)識(shí)客戶(hù)的標(biāo)記,Cookie可以包含在一個(gè)對(duì)話期或幾個(gè)對(duì)話期之間某個(gè)Web站點(diǎn)的所有頁(yè)面共享的信息,使用Cookie還可以在頁(yè)面之間交換信息。Request提供的。ookies集合允許用戶(hù)檢索在HITP請(qǐng)求中發(fā)送的cookie的值。這項(xiàng)功能經(jīng)常被使用在要求認(rèn)證客戶(hù)密碼以及電子公告板、Web聊天室等ASP程序中。 (4) Server Variables
大家都知道在瀏覽器中瀏覽網(wǎng)頁(yè)的時(shí)候使用的傳輸協(xié)議是FPIFT,在HTTP的標(biāo)題文件中會(huì)記錄一些客戶(hù)端的信息,如:客戶(hù)的lP地址等等,有時(shí)服務(wù)器端需要根據(jù)不同的客戶(hù)端信息做出不同的反映,這時(shí)候就需要用Server Variables集合獲取所需信息。
我們專(zhuān)注高端建站,小程序開(kāi)發(fā)、軟件系統(tǒng)定制開(kāi)發(fā)、BUG修復(fù)、物聯(lián)網(wǎng)開(kāi)發(fā)、各類(lèi)API接口對(duì)接開(kāi)發(fā)等。十余年開(kāi)發(fā)經(jīng)驗(yàn),每一個(gè)項(xiàng)目承諾做到滿(mǎn)意為止,多一次對(duì)比,一定讓您多一份收獲!