Javascript API是ArcGIS Server 9.3新增的一套API架構,為建立WebGIS應用提供了輕量級的解決方案,在用戶端利用ags所提供的服務,就能實現地圖應用和地理功能。
還記得ArcIMSBlueviewer樣本架構,裡面的所有操作都是基於用戶端實現,放大縮小平移都是在javascript指令碼中完成參數計算,將結果返回伺服器得到我們所需的圖片,重寫過Blueviewer的程式員能夠更好的把握webgis開發中的基礎流程,並在此基礎上寫出漂亮的webgis+ajax應用,這種方法有點類似於ags93的javascript api,只不過後者基於dojo庫,並用物件導向的方式封裝了基礎功能。
理論上我們可以對Javascript API無限擴充,以實現Ags所有伺服器端功能,目前它所提供的基礎功能有:
1.以自己資料為基礎顯示互動性的地圖
2.執行一個GIS模型並顯示結果
3.在ArcGIS線上基礎地圖上顯示我們自己的資料
4.對屬性或幾何圖形進行搜尋並顯示結果
5.搜尋地址並顯示結果
Javascript API包含的資源群組件有:
Maps--支援Ags上cache和非cache地圖的顯示,指定投影參考系
Graphics--繪圖,和通過滑鼠、鍵盤等操作實現屬性資訊的展示或地理操作
Tasks--和ADF Tasks有點類似,提供Querying、Finding addresses、Finding attributes、Identifying features、Geoprocessing功能
基於Dojo和其他庫進行擴充--比如利用Dojo widgets,google maps api,virtual earth api等等
Dojo不如EXT使用的廣泛,也存在一些爭議,但ESRI選擇dojo作為Javascript API基礎庫我覺得原因有如下幾點:
1.Dojo寬鬆的使用許可
2.Dojo功能全面,事件設計模式、向量圖形支援、顯示效果、widgets、Ajax、JSON等都是Ags用戶端開發所需要的,並且Dojo利於擴充,方便Mashup應用
3.IBM、Sun、AOL等公司的支援
Dojo存在的效率問題,但我運行一些範例程式碼時還沒有碰到,以後會特別關注,目前還沒有自己去擴充widget,也暫時沒有碰到這方面的問題,不管如何,用戶端應用和Mashup是今後WebGIS的一個主流發展方向,ESRITeam Dev對待Dojo問題應該有過謹慎考慮,不管是否GISer,在ESRI Ags採用Dojo作為Javascript API庫基礎核心後,都應該對Dojo的發展更有信心。
相關文章:
淺談 Ags REST API
初識 Dojo Dojo 之物件導向
Javascript API物件模型:http://files.cnblogs.com/flyingis/javascript_api_om_poster_v1.rar
部落格園連結:http://www.cnblogs.com/flyingis/archive/2008/07/18/1246178.html
本主題由 flyingis 於 2008-10-16 09:00 設定高亮