ASP 是 Active Server Pages 的簡稱,它並不是一種程式語言,而是由微軟公司所開發的一種環境,適用於微軟的 Web 伺服器,如 Windows 95/98/ME 上的 PWS (Personal Web Server),或是 Windows NT/2000/XP 上的 IIS (Internet Information Server)。ASP 的概念相當簡單,就是在伺服器將資料送出前,會先執行夾雜在 HTML 中的 ASP 程式碼,並將執行結果連同 HTML 送會客戶端。由於 ASP 是一種直譯式的語言,而且是在伺服器端執行,所以稱為 ASP 通稱為 Server-side scripts,已有別於在客戶端執行的 Client-side scripts,如 JavaScript 等。ASP 的一般特色,可簡單列表說明如下:
ASP 提供的內建物件,可簡介如下:
- ASP 內定的語言是 VBScript 或是 JScript,都是簡單易學的 Scripting language,可夾雜於 HTML 語法之中。
- 由伺服器端的 Scripting Engine 來執行 ASP 程式碼,不需 Compile 或 Link 即可執行。
- 由於瀏覽器並無法直接接觸 ASP 的程式碼,所以只要伺服器能由 ASP 產生正確的 HTML 內容,任何瀏覽器都可呈現 ASP 的網頁。
- ASP 與任何滿足 ActiveX Scripting 標準的語言相容,所以除了能使用 VBScript 與 JScript 之外,也能在伺服器安裝相關直譯器後,執行其他 Scripting Language,例如 PerlScript、Python等。
- ASP 的程式碼並不傳到客戶端,所以可以保護智慧財產權。
- 可經由 ActiveX Server Component 來擴充 ASP 的功能,這些 Components 可用 VB、BCB、VC、Java等程式語言來發展。
- 提供內建物件,可稱為是以物件為基礎(Object-based)的環境。
我們將在後續章節,說明這些物件的特性即使用範例。
- Request 物件:可取得客戶端傳送至伺服器的相關資訊。
- Response 物件:可取得伺服器傳送至客戶端的相關資訊,包含網頁資料等。
- Server 物件:提供與伺服器相關的各種性質(Properties)與方法(Methods)。
- Application 物件:提供一個應用程式在不同使用者之間交換資訊的管道。
- Session 物件:提供一個使用者在不同應用程式(或網頁)之間交換資訊的管道。
- ObjectContext 物件:提供交易處理(Transactions)的相關資訊。
ASP 由於簡單易學,而且與資料庫整合容易,已經取代傳統的 CGI (Common Gateway Interface),成為 Web 應用程式開發中不可或缺的一環。以下是 ASP 和 CGI 的比較表:
ASP CGI 夾雜於 HTML 之中 獨立於 HTML 之外 直譯式的語言,不需編譯 可以是直譯式或編譯式的語言 只適用於微軟的伺服器 適用於大部分的伺服器 簡單易學 較 ASP 複雜
JScript 程式設計與應用:用於伺服器端的 ASP 環境