ASP(動態伺服器網頁)簡介

利用ASP程序最常用的是Cookies,它利用Session組件實現的。同時還可以利用第三方組件延伸ASP的作用,如利用MailSender組件發送電子郵件。

通過ASP,可以結合HTML網頁、ASP指令和ActiveX元件建立動態、交互且高效的WEB服務器應用程序。同時,ASP也支持VBScript和JScript等腳本語言,默認為VBScript,而其中JScript是微軟公司的ECMAScript標準的實現,並且有自己的擴展。

五個內建組件

  • Application:在一個ASP-based application讓不同使用者共享資訊。

  • Request:從使用者處理取得資訊

  • Response:將資訊送給使用者

  • Server:提供一些Web Server的工具

  • Session:儲存在一個session內使用者的資訊

物件的支援

ASP對COM的支援會允許撰寫員使用server component(或OLE Automation server)。透過它撰寫員可以發展自己的物件,或將把程式轉成Web-base的介面。

  • 透過ADO提供對於資料庫的應用。

  • 透過ActiveX的Scripting.FileSystemObject提供對於檔案的操作。

狀態(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 Server、Microsoft Access、MySQL和Oracle,比較流行的是ASP和Microsoft SQL Server的組合。


分享到:


相關文章: