摘 要:應用于研制實現WebGIS的技術方法已經有很多種,包括CGI(Common Gateway Interface,通用網關接口)方法、服務器應用程序接口(Server API)方法、插件(Plug- in)法、Java Applet方法以及ActiveX方法等,本文將對進行探討。
關鍵詞: WebGIS;數據文件;HTML
目前,應用于研制實現WebGIS的技術方法已經有很多種,包括CGI(Common Gateway Interface,通用網關接口)方法、服務器應用程序接口(Server API)方法、插件(Plug- in)法、Java Applet方法以及ActiveX方法等。
1.CGI方法
CGI是一個用于Web服務器和客戶端瀏覽器之間的特定標準,它允許網頁通過網頁的命令來啟動一個存在于網頁服務器主機的程序(稱為CGI程序),并接收這個程序的輸出結果。當用戶發送一個請求到Web服務器時,Web服務器通過CGI把該請求轉發給后端運行的GIS服務程序,由GIS服務生成結果交給Web服務器,Web服務器再把結果傳遞到客戶端進行顯示。但這種方法存在的缺點是,對于每一個客戶請求都要重新啟動一個新的服務進程,當有多個請求時,會導致服務器的負擔加重。實際上,由于設計的原因,大多數GIS軟件都能直接作為CGI程序連接到Web上,可通過以下兩種技術來解決:
2.Server API方法
Server API方法與CGI方法相類似,所不同的是Server API往往依附于特定的Web服務器,而CGI程序是單獨可以運行的程序,如NSAPI(Netscape Server API)應用程序只能與部分來自Netscape/iPlanet的Web服務器相兼容,而Microsoft IS API依附于IIS(Internet Information Server),只能在Windows平臺上運行;基于Server API的動態連接模塊不必像CGI那樣每次都要重新啟動,在啟動后會一直處于運行狀態,其速度較CGI還要快。但這種方法也存在著一定的缺陷,就是它需要依賴特定的服務器和計算機平臺。
3.插件plug-in方法
瀏覽器插件是指能夠同瀏覽器交換信息的軟件,第三方軟件開發商可以開發插件,以使瀏覽器支持其特定格式的數據文件。利用CGI或者Server API,雖然增強了客戶端的交互性,但是用戶得到的信息卻依然是靜態的。GIS插件不但增加了瀏覽器處理地理空間數據的能力,而且對于WebGIS而言,插件處理和傳輸的是矢量格式空間數據,其數據量較小,網絡只需將GIS數據一次性傳輸,這樣就無形中減少了網絡流量和服務器端負載并且加快了用戶操作的反應速度。而插件的不足之處是,與操作系統、運行平臺及GIS數據類型相關,即對于不同的操作系統,不同的瀏覽器,不同的GIS數據需要有各自不同的GIS Plug-in支持;在應用時,需要將其先下載安裝,然后才能使用,對多種GIS數據類型,還必須安裝多個GIS Plug-in程序,這樣就給使用帶來了不便。
4.Java Applet方法
WebGIS插件可以和瀏覽器一起有效地處理空間數據,但是其明顯的不足之處是計算集中于客戶端,形成“胖客戶端”,而對于CGI方法以及Server API方法,是在服務器端進行數據處理,形成“瘦客戶端”。 Java Applet嵌入在HTML文件中,當該HTML文件被瀏覽器下載時,applet代碼也同時被下載到客戶機上,由瀏覽器解釋執行。用Java Applet實現WebGIS,優點是該方法與操作系統和平臺無關;由于Java語言本身支持網絡功能,可以直接連接Applet與服務器程序,從而使數據處理操作既可以在客戶端實現,又可以在服務器上實現。不足之處是,由于GIS操作能力有限,處理大型的GIS分析(空間對象的拓撲計算,緩沖區計算等)的能力不足,無法與CGI方式相比。
5.ActiveX方法
ActiveX是可以實現WebGIS的另一項技術,可以象Java Applet一樣嵌入到HTML文件中,在因特網上運行,是在微軟公司OLE技術的基礎上發展起來的因特網新技術。GIS ActiveX控件可以用于處理GIS數據和完成數據分析。由Web瀏覽器發出GIS數據顯示操作請求;Web服務器將接受到的用戶請求進行處理,并將用戶所需要的GIS數據和GIS ActiveX控件傳送給Web瀏覽器;客戶端接受到Web服務器傳來的GIS數據和GIS ActiveX控件,并啟動GIS ActiveX控件;對GIS數據進行處理,同時完成GIS操作。GIS ActiveX模式具有GIS Plug-in模式的所有優點,同時,ActiveX能被支持OLE標準的任何程序語言或應用系統所使用,比GIS Plug-in模式更靈活,使用更為方便。
WebGIS的發展和GIS技術、信息技術、通信技術及計算機技術的發展是密切相關的。許多Internet組網技術可直接移植于WebGIS系統。但WebGIS自身還有一些關鍵技術是必須得到解決的,如高質量數據壓縮技術、寬帶和高碼率WAP技術、組件式GIS設計等。