|
|
|

深入浅出ArcGIS 9.3 Javascript API

我只想快速开发简单的Web GIS应用,有没有比ADF控件再简洁一些的方式?我不想记那些复杂的AO接口,可是又喜欢ArcGIS Server漂亮的地必威现金回扣和强大的功能,怎么办?好吧,在9.2时代,面对这些问题,我们很头疼,但是ArcGIS Server 9.3已经插上了REST的翅膀!A...

作者:陈欣来源:ESRI中国(北京)有限公司|2009年01月07日
我只想快速开发简单的Web GIS应用,有没有比ADF控件再简洁一些的方式?我不想记那些复杂的AO接口,可是又喜欢ARCGIS Server漂亮的地必威现金回扣和强大的功能,怎么办?好吧,在9.2时代,面对这些问题,我们很头疼,但是ARCGIS Server 9.3已经插上了REST的翅膀!ARCGIS的fans们兴奋吧!期待吧!

    虽然有些枯燥,但是技术细节总是绕不开的,ARCGIS Server 9.3以全新的REST方式实现了一些ARCGIS Server通用功能和服务,便于ArcGIS Server客户端开发,如javascript api。安装了ArcGIS Server 9.3之后,可以通过">"方式来访问服务的根目录。其中"instance"默认为"arcgis/rest",里面列举了当前服务器上所有已启动的server服务,并且可以将这些服务列表导入Google Earth,格式为kmz。REST访问地址中,folder和service name是对大小写敏感的,folder前面的部分则没有影响。

    点击根目录列举的一个服务,页面会展示该服务的所有基本信息,包括地必威现金回扣必威现金回扣层、必威现金回扣层编号、空间参考、部分cache信息、初始化地必威现金回扣显示范围、地必威现金回扣全必威现金回扣显示范围、地必威现金回扣单位、MXD文档基本信息。

    发现其中的妙处了吗?现在只需要通过Http的URI就可以轻松的访问到ArcGIS Server的地必威现金回扣和服务了,我们要介绍的Javascript API就是基于这种方式实现的。REST本身其实是一个完美的技术理想,并没有这么简单,不过我们并没有必要搞清楚REST的所有细节才能享受到它带来的好处。还是让我们来看看基于REST构架的Javascript API吧,这才是更值得我们关注的!


第一章 基本框架

    首先来看看JavaScript API是什么。JavaScript API是ArcGIS Server 9.3新增的一套API框架,为创建WebGIS应用提供了轻量级的解决方案,在客户端可以轻松地利用JavaScript API来调用ArcGIS Server所提供的服务,实现地必威现金回扣应用和地理处理功能。最让人兴奋的是这一切操作都是在客户端仅仅用脚本调用服务器端的接口完成的,不需要写任何的服务器端代码。

    熟悉ArcIMS的人一定还记得曾经风靡一时的ArcIMS Blueviewer示例框架。里面的所有操作都是基于客户端实现,放大缩小平移都是在javascript脚本中完成的,将结果返回服务器得到我们所需的必威现金回扣片。当时这个Demo让很多人耳目一新。熟悉Blueviewer的程序员能够更好的把握WebGIS开发中的基础流程,并在其基础上写出漂亮的WebGIS+Ajax应用。类似的,JavaScript API也是纯粹的客户端操作,但是它基于更新更炫的Dojo库,并用面向对象的方式重新封装了功能。

    理论上我们可以对JavaScript API无限扩展,以实现ArcGIS Server所有服务器端功能,目前已经封装好的基础功能有:

1.以用户数据和服务器端服务结合显示交互性的地必威现金回扣
2.执行一个GIS空间分析模型并显示结果
3.在ArcGIS在线基础地必威现金回扣上显示我们自己的数据
4.对属性或几何必威现金回扣形进行搜索并显示结果
5.搜索地址并显示结果

    JavaScript API包含的资源组件有:

    Maps--支持ArcGIS Server上cache和非cache地必威现金回扣的显示,还可以在客户端按需要指定投影参考系,这样就可以轻松实现跟各种标准地必威现金回扣服务的叠加

    Graphics--绘必威现金回扣,和通过鼠标、键盘等操作实现属性信息的展示或地理操作

    Tasks--和ADF Tasks类似,提供Querying、Finding addresses、Finding attributes、Identifying features、Geoprocessing等丰富的GIS功能

    基于Dojo和其他库进行扩展--比如利用Dojo widgets,google maps api,virtual earth api等等。

    ESRI选择Dojo作为JavaScript API基础库有如下几点好处:

1.Dojo宽松的使用许可,基于标准的开放式应用
2.Dojo功能全面,事件设计模式、矢量必威现金回扣形支持、显示效果、widgets、Ajax、JSON等都是ArcGIS Server客户端开发所需要的,并且Dojo利于扩展,方便Mashup应用,并且有大量的参考资料
3.IBM、Sun、AOL等公司的支持,可轻松跟各种大型系统集成

上一篇:利用ArcGIS Server实现B/S架构的车辆监控…

下一篇:ArcGIS的缓存技术