SuperMap iServer REST 服务概述 |
REST - 表述性状态转移(Representational State Transfer)是 Roy Fielding 博士在2000年提出来的一种软件架构风格。采用 REST 架构风格的 Web 服务相比复杂的 SOAP 服务更加简洁、易用。为此,SuperMap iServer 专门为 GIS 的用户提供了 REST 风格的 GIS 服务。
REST 架构风格的 Web 服务逐渐被越来越多的人认可,更多的网站提供 REST 风格的 Web 服务,也有更多的开发者愿意使用 REST 服务来构建应用系统,究竟 REST 服务哪些特点吸引各种应用者的目光呢?
SuperMap iServer 将 REST 服务带来的诸多优势引入到 GIS 服务中,严格遵循 REST 设计准则,同时兼顾功能丰富、开发简单易用、操作灵活、平台扩展性强的原则,开发出专门针对 GIS 的 REST 服务,为 GIS 服务的需求者、GIS 服务的供应商、GIS 服务管理者提供更加简单、开放、灵活的解决方案。SuperMap iServer REST 服务特点如下:(以下各章节如不做特殊说明,所有 REST 服务均指 SuperMap iServer 提供的 REST 服务。)
REST 服务与客户端是一个交互的过程,客户端提出请求,需要 REST 服务进行响应,客户端根据响应判断操作情况,以便后续的处理。为了方便客户端能够详尽的判断响应结果,SuperMap iServer REST 服务提供了丰富的响应码,将客户端到 REST 服务器这样的一个交互过程中,可能出现的问题映射到不同的响应码中,如401表示因为安全的原因,导致对资源的操作没有完成。客户端通过获取这些响应码,可以判断请求的操作是否成功,如果不成功问题出现在哪里。
SuperMap iServer 将所有 GIS 功能抽象为 REST 服务的资源,这些资源都具有相对独立性,通过通用的链接器接口对资源进行操作,这样保证各类 REST 服务都是解耦的,改善系统可重用性。
REST 服务作为独立应用程序发布,它可以被部署到各种中间件中,如 RESTlet 、中间件(Tomcat,WildFly,Weblogic 等)、Tuscany。同时 REST 服务可以不依赖任何中间件,直接通过 SuperMap iServer 发布。服务供应商可以根据自身特点灵活选择。
SuperMap iServer 不仅提供各类 GIS 功能的 REST 服务,还提供 SuperMap iServer REST SDK。开发商可以利用 REST SDK 对资源、安全、表述等进行扩展,SuperMap iServer 开放的 REST 服务结构允许向服务中加入自定义的资源、安全控制器,响应表述器等。
SuperMap iServer 提供可视化服务配置工具 – iServerManager,该工具提供服务配置向导,用户根据向导可以轻松实现对 GIS 服务的定制。利用该工具,可以创建、修改、删除 GIS 服务,集群服务,可以控制服务的启动与停止。
总的来说,REST 服务是一种以非常简单、轻量级的方式实现服务与客户端之间真正互操作,服务需求者可以很容易地掌握如何使用 REST 服务,并且在某种程度上,REST 风格的 GIS 服务简化了二次开发者构建应用系统的工作量。对于服务提供者来说,SuperMap iServer 提供简单、方便的创建和发布资源的方式,还提供灵活自由的服务扩展机制以及 REST 服务的 SDK,是服务提供者构建 Service GIS 服务的最佳选择之一。