WEB统一检索本地整合技术 中国农业大学图书馆 康实
WEB统一检索本地整合技术 基于WebService和基于本地的整合实例比较 WEB-Service架构分析 WEB-PROXY架构分析 WEB_SERVER-PROXY实例 客户端WEB-PROXY架构 跨域整合分析 客户端本地整合实例(智能手机平台) 浏览器本地整合实例( Chrome扩展) 前后端混合、UI与逻辑分离的整合模式
WEB统一检索本地整合技术 基于WEB-Service (WEB端实例)
分析可见WEB端访问的是同一个Server, Server负责访问数据已被Server解析为XML统一格式
基于本地整合 (WEB端实例)
分析可见WEB端直接访问各数据源的Server,返回数据为未经处理的HTML文本,在本地进行整合
WEB统一检索本地整合技术 基于WEB-Service架构 WEB1 HTML_CLI Agent1 浏览器 操作系统 WEB SERVER 问题: 每个客户提交的一次查询,服务器要并行若干次查询,DOM、尤其是JS解析耗资源 ……
WEB统一检索本地整合技术 基于服务器WEB-PROXY架构 WEB1 HTML_CLI Agent1 浏览器 操作系统 WEB SERVER HTML_CLI 映射 Agent1 解析 WEB2 HTML_CLI Agent2 …… 1.抽取HTML中JS文本 2.通过innerHTML方法在iframe中解析HTML为DOM; 3. 运行JS,生成node,JS操做DOM获取Node值
基于WEB_SERVER-PROXY实例(配置)
WEB统一检索本地整合技术 基于WEB_SERVER-PROXY实例(WEB)
WEB统一检索本地整合技术 基于WEB_SERVER-PROXY实例 (数据源) 基于WEB_SERVER-PROXY实例
基于WEB_SERVER-PROXY实例(性能测试)
WEB统一检索本地整合技术 基于客户端WEB-PROXY架构 WEB1 浏览器 WEB PROXY Agent1 WEB2 Agent2 映射 Agent1 解析 WEB2 Agent2 …… 解析 客户机 服务器
WEB统一检索本地整合技术 基于客户端跨域整合 WEB1 Agent1 浏览器 操作系统 WEB PROXY WEB2 Agent2 …… 映射 Agent1 解析 WEB2 Agent2 ……
WEB统一检索本地整合技术 浏览器跨域限制 直接使用浏览器在本地整合,这种方式原理简单,通过JS操作DOM就可以达到整合的目的。但这种方式必须解决“跨域”问题:限制跨域访问,是浏览器最基本的安全特性,目前JSONP、IFRAME等跨域方案也不能实现真正意义上的跨域访问。HTML5中提供了便利的跨域解决方案,只需要资源提供者在WEBSERVER做个简单的授权(Access-Control),目前主流浏览器都支持HTML5这一新特性。 出于安全的考虑,浏览器是不允许从www.a.com来操作另外一个不同域网站www.b.com的内容,包括同域名不同端口(例如 a.com:80 向 a.com:8080 ) 浏览器安全模型的规定,给分布式(面向服务、混搭等)Web开发带来了麻烦。
WEB统一检索本地整合技术 (http://www.w3.org/TR/cors/) 通过Src属性实现简单跨域访问 跨域JS脚本方式 JSONP (mashup应用) 跨域图片 跨域iframe AJAX HTML5新跨域特性 在请求信息中,浏览器使用 Origin 这个 HTTP 头来标识该请求; 在返回的响应信息中,使用 Access-Control-Allow-Origin 头来控制哪些域名的脚本可以访问该资源。如果设置 Access-Control-Allow-Origin:*,则允许所有域名的脚本访问该资源 (http://www.w3.org/TR/cors/)
WEB统一检索本地整合技术 通过Src属性实现简单跨域访问 跨域JS脚本方式 JSONP (mashup应用) 跨域图片 跨域iframe <iframe src="http://book1.duxiu.com/opaclink.jsp?isbn=7-5046-3744-0"> 通过Src属性实现简单跨域访问 跨域JS脚本方式 JSONP (mashup应用) 跨域图片 跨域iframe $.getJSON("http://api.douban.com/book/subject/isbn/7-5046-3744-0?alt=xd&callback=?", function(book){ var tr=“……”+book.summary[‘$t’]+“……"; $("#book_table").append(tr); }); <img src="http://202.112.175.202:8080/poweb/openurl?isbn=7-5046-3744-0">
WEB统一检索本地整合技术 编写客户端直接访问WEB资源,抓回数据再整合;这要求客户端包含DOM解析、JS引擎,形同编写浏览器。这种C/S方式在复杂度、跨平台、维护、用户体验上满足不了要求; 使用浏览器内核,仅做外围包装。 Trident:IE Gecko: Firefox WebKit: Safari、 Chrome、及智能手机平台
WEB统一检索本地整合技术 基于客户端跨域整合实例(智能手机平台) 调用WEBKIT内核
基于客户端跨域整合实例(智能手机平台) 设置权限
WEB统一检索本地整合技术 基于客户端跨域整合实例(智能手机平台) 基于客户端跨域整合实例(智能手机平台) 运行效果
WEB统一检索本地整合技术 使用第三方平台(Runtime) Adobe AIR MS Silverlight SUN JavaFX
WEB统一检索本地整合技术 使用浏览器 IE :从本地域访问,确认安全提示。 Firefox:对JS数字签名或使用插件 Chrome等:使用扩展
WEB统一检索本地整合技术 编写及安装Chrome 扩展
WEB统一检索本地整合技术 前后端混合、UI与逻辑分离的整合模式 WEB1 HTML_CLI WEB Agent1 SERVER WEB2 映射 Agent1 解析 HTML_CLI WEB2 Agent2 Agent3 WEB3 Agent4 WEB4 UI 逻辑层
WEB统一检索本地整合技术 谢 谢 ! 中国农业大学图书馆 康实