【正文】
。 ISAPI是鉤子接口,它允許你查看進(jìn)入 IIS 的每一個(gè)請(qǐng)求并且可以修改請(qǐng)求的內(nèi)容(包括輸入和輸出)或者改變模塊(如:身份驗(yàn)證等)的行為。從本質(zhì)上來說,它是一個(gè)事務(wù)接口。 作為約定, ISAPI 支持 ISAPI 擴(kuò)展( extensions)和 ISAPI 過濾( filters)。這使得那些高層次的應(yīng)用程序需要的信息可以從 ISAPI 提供的信息中提煉。大多 Perl、 PHP和 JSP的執(zhí)行如同許多第三方解決方案一樣,可以在 IIS 運(yùn)行。 ISAPI 趨向于被當(dāng)作橋接口使用,用于給高層次的工具提供應(yīng)用服務(wù)類型的功能。 ISAPI 提供了最低層的、高性能的接口,開發(fā)者和工具廠商可以使用這些接口深入到 IIS 里。它定義的接口非常的單一并且性能最優(yōu)。就目前而言,僅僅需要理 解擴(kuò)展就是一種基本的映射機(jī)制, 用它可以從 ISAPI 里獲取一個(gè)請(qǐng)求,然后把請(qǐng)求路由到指定處理該請(qǐng)求的處理器中。每一個(gè)處理器都是一個(gè) .NET 類,用于處理指定的擴(kuò)展。當(dāng)然也可以定義你自己的處理器。舉個(gè)例子, WebServices 的擴(kuò)展名 .asmx 不會(huì)把一個(gè)請(qǐng)求路由到磁盤上的某一個(gè)頁面,而是會(huì)路由到在定義中附加了指定特性( WebMethodAttribute)的類,此特性會(huì)把它標(biāo)識(shí)成 一個(gè) Web Services 的實(shí)現(xiàn)。 注: ISAPI 是自定義 Web 請(qǐng)求處理中第一個(gè)并且具有最高性能的 IIS 入口點(diǎn)。在 IIS 中, .aspx 經(jīng)由“應(yīng)用程序擴(kuò)展”被映射到 ISAPI 的 dll 文件: 。但是,這個(gè)處理過程如何工作,則完全依賴于 HTTP 處理器( handler)的執(zhí)行。在服務(wù)器端, IIS5 或者 IIS6 將會(huì)收到這個(gè)請(qǐng)求。 從瀏覽器到 讓我們從一個(gè)典型的 Web 請(qǐng)求的生命周期的起點(diǎn)開始。 ISAPI 提供了與 Web Server 通信的核心接口,然后 使用非托管代碼獲取請(qǐng)求以及對(duì)客戶端請(qǐng)求發(fā)出響應(yīng)。但是無論如何, ISAPI 沒有被廢棄。但對(duì)于企業(yè)級(jí)的程序開發(fā)是相當(dāng)?shù)碾y于管理的。 ISAPI是底層 Win32 樣式的 API,僅它的接口就有 1 兆,這對(duì)于大型的程序開發(fā)是非常困難的。 使用 可以完成一些任務(wù),之前這些任務(wù)是使用 IIS 上的 ISAPI 擴(kuò)展和過濾來完成的。對(duì)于功能強(qiáng)大的 .NET 框架而言,使用自己的東西,構(gòu)建一個(gè)成熟的、高性能的引擎體系結(jié)構(gòu)已經(jīng)成為一個(gè)遺囑。 還介紹了關(guān)鍵的性能優(yōu)勢(shì),超過先前的版本。您也可以自己寫表達(dá)的建設(shè)者,以創(chuàng)建自己的自定義語法來替代的價(jià)值在一個(gè)網(wǎng)頁渲染。 介紹了一種宣示性的新的語法參照代碼來替代價(jià)值觀融入網(wǎng)頁,所謂表達(dá)的建設(shè)者。在除了內(nèi)建的支持,很容易添加額外的支持,擴(kuò)展實(shí)施自訂的建立供應(yīng)商和登記,它在 中。舉例來說, resx 文件可以被動(dòng)態(tài) 編譯的資源, WSDL 文件,以 Web Service的代理,和。 匯編,建立供應(yīng)商。在此模型中,支持新的數(shù)據(jù)后端存儲(chǔ)供應(yīng)商可以很容易地說,通過實(shí)施自定義數(shù)據(jù)源的控制。 數(shù)據(jù)源的控制。 服務(wù)器控件可擴(kuò)展性。無論是服務(wù)器控件,頁處理,匯編,或?yàn)楹诵牡膽?yīng)用服務(wù),您會(huì)發(fā)現(xiàn),都是很容易定制和更換,以度身訂造的,以您的需求。 提供的功能,這將使開發(fā)人員和管理員,以簡(jiǎn)化的日常管理及維修他們的 Web應(yīng)用程序。 也提供了新的健康監(jiān)測(cè)的支持,以使管理員能夠自動(dòng)通知申請(qǐng)時(shí),在服務(wù)器上開始遇到問題。 aspx 文件的一部分,該編譯階段) ,進(jìn)一步保護(hù)您的知識(shí)產(chǎn)權(quán)。 提供了一個(gè)新的應(yīng)用程序部署實(shí)用工具,使雙方開發(fā)人員和管理員,以 prepile 一個(gè)動(dòng)態(tài)的 應(yīng)用在部署之前。 提供了一種新的綜合管理工具,插入現(xiàn)有的 IIS 管 理 MMC 中,使管理員能夠生動(dòng)地讀取或改變共同設(shè)置在我們的XML 配置文件。 中包含新的配置管理 API ,使用戶以編程方式建立的程序或腳本創(chuàng)建,讀取和更新的 和 中配置文件。 介紹了幾種新功能,進(jìn)一步加強(qiáng)部署,管理和運(yùn)作 服務(wù)器。 是設(shè)計(jì)與管 理性和可管理性,在銘記。針對(duì)同一件事情,可以通過不同的處理方法完成,而且實(shí)現(xiàn)代碼都非常的直觀。通過這一套機(jī)制,可以進(jìn)入較低層次的接口如:緩存,身份驗(yàn)證,授權(quán)等是有可能的。在處理請(qǐng)求的每一個(gè)層面都牽涉到許多對(duì)象,但大多數(shù)對(duì)象都可以通過派生或者事件接口來擴(kuò)展。事實(shí)上, HTTP 運(yùn)行時(shí)是一個(gè)組件,你可以把它宿主在 IIS 之外的應(yīng)用程序上,甚至完全可以和其它的服務(wù)組合在一起。 也是一個(gè)請(qǐng)求處理引擎,它獲取客戶端請(qǐng)求,然后通過它內(nèi)置的管道,把請(qǐng)求傳到一個(gè)終點(diǎn),在這個(gè)終點(diǎn),開發(fā)者可以添加處理這個(gè)請(qǐng)求的邏輯代碼。s ISAPI filter to the expansion and pletion. Although there are some restrictions, but pared with the ASP, has been great progress. ISAPI is the underlying Win32style API, the interface it will have only 1 trillion, which is largescale development is very difficult. ISAPI is due to the underlying interface, so its speed is very fast. But for enterpriselevel development is very difficult to administer. Therefore, in a certain period of time, ISAPI mainly serve as a platform for other applications or the bridge interface. But in any case, ISAPI has not been abandoned. In fact, the Microsoft platform and the interface is through the IIS host. NET in the ISAPI extension to munication, and then runtime direct access to . ISAPI provides the core Web Server munication interface, and then use nonmanaged code request access to and issued in response to client requests. ISAPI provides the content object is similar to the public through the HttpRequest and HttpResponse, through a well designed, accessible interface, the way to managed objects exposed to nonhosted data. From