Active Server Pages

動態伺服器網頁(Active Server Pages),由微軟公司開發的伺服器端運行的腳本平台,它被Windows下Internet Information Services (IIS)的程式所管理。

基本介紹

  • 中文名:動態伺服器網頁
  • 外文名:Active Server Pages
  • 開發公司微軟公司
  • 組件個數:五個
簡介,ASP 的特色,版本,原理,範例,

簡介

動態伺服器網頁(Active Server Pages),由微軟公司開發的伺服器端運行的腳本平台,它被Windows下Internet Information Services (IIS)的程式所管理。通過ActiveX server 的技術讓不同的用戶能有不同的畫面,或需要讓他們可以訪問伺服器 (server)上的數據時,使用ASP3.0中提供了五個自帶的對象創建模擬和安全性的動態內容,來協助程式設計師隱藏複雜的溝通機制,讓程式設計師可以專注在解決問題和套用之上,這樣可以更快速地開發動態網頁的同時每一個組件都是可以由一組富有經驗的程式設計師根據動態網頁最常用的功能而獨立開發。
五個組件包括:
Application:在一個 ASP-based application 讓不同用戶共享信息。
Request:從用戶處理取得信息
Response:將信息送給用戶
Server:提供一些 Web Server 的工具
Session:存儲在一個 session 內用戶的信息

ASP 的特色

ASP隱藏了網頁伺服器與瀏覽者之間溝通的繁瑣機制的同時也基於script base的特性,網頁撰寫員可以專心撰寫套用的程式的邏輯部份,再者ASP也像 HTML 般通過撰寫程式來實時測試網頁是否安全地運行,而不必擔心程式和伺服器不能溝通的問題,另外因為那些 script 是於傳送前於伺服器中先行轉譯處理成為HTML後再而傳送至代理伺服器邊的動態網頁技術,不必擔心瀏覽器的支持性及網頁撰寫員的程式邏輯像 client-side script 會被盜用,因此最終瀏覽者只會是使用 HTML 來瀏覽。
利用ASP程式最常用的是Cookies,它利用Session組件實現的。同時還可以利用第三方組件延伸ASP的作用,如利用MailSender組件傳送電子郵件。
通過ASP我們可以結合HTML網頁、ASP指令和ActiveX組件創建動態、互動且高效的WEB伺服器應用程式。同時,ASP也支持VBScript和JScript等腳本語言,默認為VBScript。其中JScript是微軟公司的ECMAScript標準的實現,並且有自己的擴展。
[編輯]對象的支持
ASP對 COM 的支持會允許撰寫員使用 server component(或OLE Automation server)。通過它撰寫員可以發展自已的對象,或將把程式轉成 Web-base 的接口。
[編輯]狀態 (State) 的管理
狀態管理是ASP的重要功能之一,原因為HTTP是一個stateless的協定,當有匿名的 request進入時,瀏覽者無法辨認這些的request 是否安全,或那些request 之間的關連性時,便無法通過瀏覽者取得信息如帳戶及密碼等,對交易特性的 Web 應用程式造成了阻礙。因此ASP通過 cookie的包裝和使用讓瀏覽者可以簡單地管理眾多用戶名稱的不同狀態。

版本

ASP 目前最新的版本為 3.0,與Windows 2000 一起發行,並內植於 IIS 5.0 中。
ASP 1.0 內含於 Windows NT 4.0 Service Pack 3 (IIS 3.0) 發行。
ASP 2.0 內含於 Windows NT 4.0 Option Pack,與 IIS 4.0 一起亮相。
自 ASP 3.0 發行後,除了各版本對它的安全性或問題修補外,對主要功能都沒有再進一步的更新。 Windows Server 2003 發行的 ASP 也是 3.0 版本。
其後繼者 ASP+(即 ASP .NET),已內含於 .NET Framework 中持續演化。

原理

ASP是經過伺服器解析之後再向網頁瀏覽器返回數據,所以有了ASP就不必擔心客戶的瀏覽器是否能運行你所編寫的代碼。因為所有的程式都將在網頁伺服器端執行,包括所有嵌在普通HTML中的腳本程式。當程式執行完畢後,伺服器僅將執行的結果返回給客戶瀏覽器,這樣也就減輕了客戶端瀏覽器的負擔,大大提高了互動的速度。
由於代碼是需要經過伺服器執行之後才向瀏覽器傳送的,所以在客戶端看到的只能是經過解析之後的數據,而無法獲得原始碼,故編寫者不用擔心自己的原始碼會被別人剽竊。但不排除黑客利用系統漏洞竊取伺服器端的ASP原始碼
基於這樣的解析方式,也導致運行ASP頁面相對於普通的HTML頁面要慢一點。因為普通的HTML頁面只需要瀏覽器就能夠解析,而ASP則必須是伺服器將整頁的代碼都執行一遍之後再傳送數據。
ASP提供與資料庫的互動,如Microsoft SQL ServerMicrosoft AccessMySQLOracle,比較流行的是ASP和Microsoft SQL Server的組合。

範例

ASP程式(包括與資料庫連線的部分)都是嵌入在普通HTML和其他客戶端語言中的。例如
你好!
<!--上面是將“你好!”在瀏覽器中輸出,這是通過HTML實現的-->
<%
' 這一行注釋,將不會顯示
Response.write "Baidu搜尋引擎" ' 這行將在瀏覽器中輸出“Baidu搜尋引擎”
%>
從中我們可以看出,ASP語言是嵌入在“<%...%>”之間的部分。而這個程式最終結果將是:Baidu搜尋引擎

相關詞條

熱門詞條

聯絡我們