移动Web程序的开发平台 Worklight
openkk
12年前
Worklight(以下简称 WL)作为一个移动程序的开发平台,通过三种模式(Web、混合、本地)支持了不同需求的客户端开发,但是面临的一个现实问题是如何和已有的系统进行良好 的集成。适配器(adapter)是平台的服务器端组件,作为一个传输层负责 WL 服务器和不同企业级后台的连接。通过平台支持的 HTTP 和 SQL 适配器,客户端应用可以与原有系统方便的进行数据访问,这减少了重复的开发工作。
适配器由三部分组成:基于 XML 的配置文件,用于定义适配器的类型和提供的方法;基于 JS 的方法实现文件,通过 Mozilla Rhino 解析器实现对不同后台的访问;基于 XSL 文件的数据转化规则,在 HTTP 适配器中存在,用于将获得的数据按照一定规则进行转化。
WL 支持的适配器提供了如下特性:
- 快速开发:开发者可以使用便捷而强大的服务器端 JavaScript 创建简洁易读的代码,用于和不同后台程序的集成。
- 只读操作和事务操作:平台通过适配器支持对后台系统的只读和事物操作。
- 安全:适配器使用灵活的认证机制创建与后台的连接,使用的用户可以是系统用户也可以是事务中操作的用户。
- 可扩展性:适配器通过 cache 机制减少了与后台系统的交互,并且通过配置,限定和后台系统建立的连接数。
- 数据透明:适配器提供了获取后台数据的统一接口,这样开发者在获取数据时就不需要关注数据源、格式和传输协议信息。
图 1 描述了适配器和前台的 app 以及后台系统间数据交互的过程,具体的流程如下:
- 适配器暴露一系列的方法,称之为 procedures,前台 app 通过 Ajax 方式调用这些过程。
- 这些方法从后台获取相应信息。
- 后台系统返回的数据格式如下
- 如果格式为 JSON,WL 服务器直接返回。
- 如果格式不是 JSON,服务器将数据格式转化为 JSON 后,再返回。
- 这些方法将获得的 JSON 数据进行业务处理,将最终结果返回给 app。