《一种网络应用路由的方法、服务器、终端和系统.pdf》由会员分享,可在线阅读,更多相关《一种网络应用路由的方法、服务器、终端和系统.pdf(16页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 104283920 A (43)申请公布日 2015.01.14 CN 104283920 A (21)申请号 201310282453.3 (22)申请日 2013.07.05 H04L 29/08(2006.01) G06F 9/445(2006.01) (71)申请人 腾讯科技 (深圳) 有限公司 地址 518044 广东省深圳市福田区振兴路赛 格科技园 2 栋东 403 室 (72)发明人 漆昱恒 (74)专利代理机构 北京派特恩知识产权代理有 限公司 11270 代理人 蒋雅洁 张振伟 (54) 发明名称 一种网络应用路由的方法、 服务器、 终端和系 统 (。
2、57) 摘要 本发明提供了一种网络应用 (Webapp)路由 的方法, 包括 : 接收显示虚拟页面请求, 所述请求 携带虚拟页面的统一资源定位符 (URL) ; 判断所述 URL 是否携带描点信息, 如果携带, 则根据所述描 点信息中的页面序列号 (ID) 、 或根据页面 ID 和页 面参数, 查询相应虚拟页面的信息并发送 ; 否则, 查询预设初始页面的信息并发送。本发明还提供 了一种 Webapp 路由的服务器、 终端和系统。通过 本发明, 能够解决当前单页面应用中无法保存虚 拟页面的问题, 并且能够实现对虚拟页面的传播 和引用、 以及实现浏览虚拟页面时的前进和后退 操作。 (51)Int.。
3、Cl. 权利要求书 3 页 说明书 10 页 附图 2 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书3页 说明书10页 附图2页 (10)申请公布号 CN 104283920 A CN 104283920 A 1/3 页 2 1. 一种网络应用 Webapp 路由的方法, 其特征在于, 所述方法包括 : 接收显示虚拟页面请求, 所述请求携带虚拟页面的统一资源定位符 URL ; 判断所述 URL 是否携带描点信息, 如果携带, 则根据所述描点信息中的页面序列号 ID、 或根据页面 ID 和页面参数, 查询相应虚拟页面的信息并发送 ; 否则, 查询预设初始页面的 信息。
4、并发送。 2. 根据权利要求 1 所述 Webapp 路由的方法, 其特征在于, 所述方法还包括 : 建立虚拟页面的页面 ID 与所述虚拟页面的页面结构以及页面内容数据接口的映射关 系, 或建立虚拟页面的页面 ID 和页面参数与所述虚拟页面的页面结构以及页面内容数据 接口的映射关系 ; 所述根据描点信息中的页面 ID、 或根据页面 ID 和页面参数, 查询相应虚拟页面的信 息, 包括 : 以所述描点信息中的页面 ID 为索引, 在建立的映射关系中查询对应的页面结构以及 页面内容数据接口, 并通过所述页面内容数据接口查询相应的页面内容数据 ; 或 以所述描点信息中的页面 ID 和页面参数为索引,。
5、 在所述建立的映射关系中查询对应 的页面结构以及页面内容数据接口, 并通过所述页面内容数据接口查询对应的页面内容数 据。 3. 根据权利要求 1 所述 Webapp 路由的方法, 其特征在于, 所述方法还包括 : 监测虚拟页面 URL 携带的描点信息是否改变, 并在确定描点信息改变时, 根据改变后 的描点信息中的页面 ID、 或根据页面 ID 和页面参数, 查询相应虚拟页面的页面结构和页面 内容数据并发送。 4. 根据权利要求 1、 2 或 3 所述 Webapp 路由的方法, 其特征在于, 所述方法还包括 : 监 测到虚拟页面 URL 携带的描点信息改变时, 按照所述描点信息改变的先后顺序存。
6、储所述描 点信息 ; 所述方法还包括 : 在接收到显示当前虚拟页面的后退页或前进页的请求时, 根据所述 存储的描点信息及其改变的先后顺序确定所述后退页或前进页对应的描点信息中的页面 ID、 或页面ID和页面参数, 并根据对应的描点信息中的页面ID、 或根据页面ID和页面参数, 查询所述后退页或前进页的页面结构和页面内容数据并发送。 5. 根据权利要求 4 所述 Webapp 路由的方法, 其特征在于, 在所述根据对应的描点信息 中的页面 ID、 或根据页面 ID 和页面参数, 查询所述后退页或前进页的页面结构和页面内容 数据之前, 所述方法还包括 : 判断是否缓存所述后退页或前进页的页面结构和。
7、页面内容数据, 如果缓存, 则发送缓 存的所述后退页或前进页的页面结构和页面内容数据 ; 否则, 根据对应的描点信息中的页 面 ID、 或根据页面 ID 和页面参数, 查询所述后退页或前进页的页面结构和页面内容数据并 发送。 6. 一种网络应用 Webapp 服务器, 其特征在于, 包括 : 收发模块和查询模块, 所述收发模块, 用于接收显示虚拟页面请求, 所述请求携带虚拟页面的统一资源定位 符 URL ; 所述查询模块, 用于判断所述 URL 是否携带描点信息, 如果携带, 则根据所述描点信息 中的页面序列号 ID、 或根据页面 ID 和页面参数, 查询相应虚拟页面的信息, 否则查询预设 权。
8、 利 要 求 书 CN 104283920 A 2 2/3 页 3 初始页面的信息 ; 所述收发模块还用于, 发送所述查询模块查询所得虚拟页面的信息或初始页面的信 息。 7. 根据权利要求 6 所述 Webapp 服务器, 其特征在于, 所述服务器还包括 : 映射模块, 用于建立虚拟页面的页面 ID 与所述虚拟页面的页面结构以及页面内容数 据接口的映射关系, 或建立虚拟页面的页面 ID 和页面参数与所述虚拟页面的页面结构以 及页面内容数据接口的映射关系 ; 所述查询模块, 还用于以所述描点信息中的页面 ID 为索引, 在所述映射模块建立的映 射关系中查询对应的页面结构和页面内容数据接口, 并通。
9、过所述页面内容数据接口查询对 应的页面内容数据 ; 或, 以所述描点信息中的页面 ID 和页面参数为索引, 在所述映射模块 建立的映射关系中查询对应的页面结构和页面内容数据接口, 并通过所述页面内容数据接 口查询对应的页面内容数据。 8. 根据权利要求 6 所述 Webapp 服务器, 其特征在于, 所述服务器还包括 : 监测模块, 用于监测虚拟页面 URL 携带的描点信息是否改变, 并在确定描点信息改变 时发送改变后的描点信息至所述查询模块 ; 所述查询模块, 还用于根据所述监测模块发送的描点信息中的页面 ID、 或根据页面 ID 和页面参数, 查询所述虚拟页面的页面结构和页面内容数据 ; 。
10、所述收发模块, 还用于发送所述查询模块查询所得的页面结构和页面内容数据。 9. 根据权利要求 8 所述 Webapp 服务器, 其特征在于, 所述监测模块, 还用于在监测到虚拟页面 URL 携带的描点信息改变时, 按照所述描点 信息改变的先后顺序存储所述描点信息 ; 所述查询模块, 还用于在所述收发模块接收到显示当前虚拟页面的后退页或前进页的 请求时, 根据所述监测模块存储的描点信息及其改变的先后顺序, 确定所述后退页或前进 页对应的描点信息中的页面 ID、 或页面 ID 和页面参数, 根据所述页面 ID、 或根据页面 ID 和 页面参数, 查询所述后退页或前进页的页面结构和页面内容数据 ; 。
11、所述收发模块, 还用于发送所述后退页或前进页的页面结构和页面内容数据。 10. 根据权利要求 6 至 9 任一项所述 Webapp 服务器, 其特征在于, 所述服务器还包括 : 缓存模块, 用于缓存所述查询模块查询所得的初始页面的信息、 和 / 或虚拟页面的信息 ; 还用于在所述查询模块查询所述后退页或前进页的页面结构和页面内容数据之前, 所 述缓存模块查询自身是否缓存有所述后退页或前进页的页面结构和页面内容数据, 如果缓 存, 则通过所述收发模块发送缓存的所述后退页或前进页的页面结构和页面内容数据 ; 否 则, 指示所述查询模块查询所述后退页或前进页的页面结构和页面内容数据。 11. 一种网。
12、络应用 Webapp 终端, 其特征在于, 包括 : 发送模块和接收模块, 所述发送模块, 用于发送显示虚拟页面请求, 所述请求携带虚拟页面的统一资源定位 符 URL, 所述 URL 携带描点信息, 所述描点信息中包括页面序列号 ID、 或包括页面 ID 和页面 参数 ; 所述接收模块, 用于接收虚拟页面的信息。 12. 根据权利要求 11 所述 Webapp 终端, 其特征在于, 所述终端还包括 : 分配模块, 用于 根据预设的页面 ID 和页面参数, 为不同内容的虚拟页面分配各自唯一的描点信息。 权 利 要 求 书 CN 104283920 A 3 3/3 页 4 13. 一种网络应用 W。
13、ebapp 路由系统, 其特征在于, 所述系统包括权利要求 6-10 任一项 所述的 Webapp 服务器、 以及权利要求 11 或 12 所述的 Webapp 终端。 权 利 要 求 书 CN 104283920 A 4 1/10 页 5 一种网络应用路由的方法、 服务器、 终端和系统 技术领域 0001 本发明涉及网络通信技术, 尤其涉及一种网络应用 (Webapp) 路由的方法、 服务器、 终端和系统。 背景技术 0002 Webapp 技术普遍采用单页面应用 (SPA, Single Page App)这一终端页面的实 现方式, 它既像传统的页面, 操作体验又类似于原生应用 (app)。
14、 。SPA 实现时在终端后台 只有一个面向浏览器的地址, 同时终端根据用户点击的链接或是用户的行为, 通过脚本 (JavaScript)来实现终端页面内容的变化, 用户点击链接或是用户的行为触发页面内 容变化时, 变化页面的信息 (包括页面内容数据以及页面结构) 通过 JavaScript 拼接, 而 JavaScript 拼接页面所需要的页面内容数据以及页面结构, 则通过使用异步的脚本与可扩 展标记语言 (AJAX, Asynchronous Java Script and Extensible markup language) 动态 获取, JavaScript 利用 AJAX 获取的信息。
15、拼接的页面, 称之为虚拟页面。 0003 目前单页面应用存在以下问题 : 0004 1、 由于浏览器中变换的页面以虚拟页面的形式显示, 所述虚拟页面处于临时状 态, 无法标识浏览器当前显示页面, 如果刷新浏览器当前页面, 浏览器会在当前页面显示 初始化页面, 而非刷新前的虚拟页面 ; 也就是说, 虚拟页面的当前状态为临时状态, 无法保 存 ; 0005 2、 无法在浏览器中收藏当前页面, 或是将当前虚拟页面内容进行传播或引用 ; 0006 3、 由于是以虚拟页面的形式显示变换的页面, 浏览器无法记录用户浏览历史, 从 而不能提供用户在浏览页面时经常用到的页面前进和后退功能, 影响了用户体验。 。
16、发明内容 0007 有鉴于此, 本发明的主要目的在于提供一种 Webapp 路由的方法、 服务器、 终端和 系统, 解决当前单页面应用中无法保存虚拟页面的问题, 能够实现对虚拟页面的传播和引 用、 以及浏览虚拟页面时的前进和后退操作。 0008 为达到上述目的, 本发明的技术方案是这样实现的 : 0009 本发明提供了一种 Webapp 路由的方法, 所述方法包括 : 0010 接收显示虚拟页面请求, 所述请求携带虚拟页面的统一资源资源定位符 (URL, Uniform Resource Locator) ; 0011 判断所述 URL 是否携带描点信息, 如果携带, 则根据所述描点信息中的页。
17、面序列 号 (ID, IDentity) 、 或根据页面 ID 和页面参数, 查询相应虚拟页面的信息并发送 ; 否则, 查 询预设初始页面的信息并发送。 0012 优选地, 所述方法还包括 : 0013 建立虚拟页面的页面 ID 与所述虚拟页面的页面结构以及页面内容数据接口的映 射关系, 或建立虚拟页面的页面 ID 和页面参数与所述虚拟页面的页面结构以及页面内容 说 明 书 CN 104283920 A 5 2/10 页 6 数据接口的映射关系 ; 0014 所述根据描点信息中的页面 ID、 或根据页面 ID 和页面参数, 查询相应虚拟页面的 信息, 包括 : 0015 以所述描点信息中的页面。
18、 ID 为索引, 在建立的映射关系中查询对应的页面结构 以及页面内容数据接口, 并通过所述页面内容数据接口查询相应的页面内容数据 ; 或 0016 以所述描点信息中的页面 ID 和页面参数为索引, 在所述建立的映射关系中查询 对应的页面结构以及页面内容数据接口, 并通过所述页面内容数据接口查询对应的页面内 容数据。 0017 优选地, 所述方法还包括 : 0018 监测虚拟页面 URL 携带的描点信息是否改变, 并在确定描点信息改变时, 根据改 变后的描点信息中的页面 ID、 或根据页面 ID 和页面参数, 查询相应虚拟页面的页面结构和 页面内容数据并发送。 0019 优选地, 所述方法还包括。
19、 : 监测到虚拟页面 URL 携带的描点信息改变时, 按照所述 描点信息改变的先后顺序存储所述描点信息 ; 0020 所述方法还包括 : 在接收到显示当前虚拟页面的后退页或前进页的请求时, 根据 所述存储的描点信息及其改变的先后顺序确定所述后退页或前进页对应的描点信息中的 页面 ID、 或页面 ID 和页面参数, 并根据对应的描点信息中的页面 ID、 或根据页面 ID 和页面 参数, 查询所述后退页或前进页的页面结构和页面内容数据并发送。 0021 优选地, 在所述根据对应的描点信息中的页面 ID、 或根据页面 ID 和页面参数, 查 询所述后退页或前进页的页面结构和页面内容数据之前, 所述方。
20、法还包括 : 0022 判断是否缓存所述后退页或前进页的页面结构和页面内容数据, 如果缓存, 则发 送缓存的所述后退页或前进页的页面结构和页面内容数据 ; 否则, 根据对应的描点信息中 的页面 ID、 或根据页面 ID 和页面参数, 查询所述后退页或前进页的页面结构和页面内容数 据并发送。 0023 本发明还提供一种 Webapp 服务器, 包括 : 收发模块和查询模块, 0024 所述收发模块, 用于接收显示虚拟页面请求, 所述请求携带虚拟页面的统一资源 定位符 URL ; 0025 所述查询模块, 用于判断所述 URL 是否携带描点信息, 如果携带, 则根据所述描点 信息中的页面 ID、 。
21、或根据页面 ID 和页面参数, 查询相应虚拟页面的信息, 否则查询预设初 始页面的信息 ; 0026 所述收发模块还用于, 发送所述查询模块查询所得虚拟页面的信息或初始页面的 信息。 0027 优选地, 所述服务器还包括 : 0028 映射模块, 用于建立虚拟页面的页面 ID 与所述虚拟页面的页面结构以及页面内 容数据接口的映射关系, 或建立虚拟页面的页面 ID 和页面参数与所述虚拟页面的页面结 构以及页面内容数据接口的映射关系 ; 0029 所述查询模块, 还用于以所述描点信息中的页面 ID 为索引, 在所述映射模块建立 的映射关系中查询对应的页面结构和页面内容数据接口, 并通过所述页面内容。
22、数据接口查 询对应的页面内容数据 ; 或, 以所述描点信息中的页面 ID 和页面参数为索引, 在所述映射 说 明 书 CN 104283920 A 6 3/10 页 7 模块建立的映射关系中查询对应的页面结构和页面内容数据接口, 并通过所述页面内容数 据接口查询对应的页面内容数据。 0030 优选地, 所述服务器还包括 : 0031 监测模块, 用于监测虚拟页面 URL 携带的描点信息是否改变, 并在确定描点信息 改变时发送改变后的描点信息至所述查询模块 ; 0032 所述查询模块, 还用于根据所述监测模块发送的描点信息中的页面 ID、 或根据页 面 ID 和页面参数, 查询所述虚拟页面的页面。
23、结构和页面内容数据 ; 0033 所述收发模块, 还用于发送所述查询模块查询所得的页面结构和页面内容数据。 0034 优选地, 所述监测模块, 还用于在监测到虚拟页面 URL 携带的描点信息改变时, 按 照所述描点信息改变的先后顺序存储所述描点信息 ; 0035 所述查询模块, 还用于在所述收发模块接收到显示当前虚拟页面的后退页或前进 页的请求时, 根据所述监测模块存储的描点信息及其改变的先后顺序, 确定所述后退页或 前进页对应的描点信息中的页面 ID、 或页面 ID 和页面参数, 根据所述页面 ID、 或根据页面 ID 和页面参数, 查询所述后退页或前进页的页面结构和页面内容数据 ; 003。
24、6 所述收发模块, 还用于发送所述后退页或前进页的页面结构和页面内容数据。 0037 优选地, 所述服务器还包括 : 缓存模块, 用于缓存所述查询模块查询所得的初始页 面的信息、 和 / 或虚拟页面的信息 ; 0038 还用于在所述查询模块查询所述后退页或前进页的页面结构和页面内容数据之 前, 所述缓存模块查询自身是否缓存有所述后退页或前进页的页面结构和页面内容数据, 如果缓存, 则通过所述收发模块发送缓存的所述后退页或前进页的页面结构和页面内容数 据 ; 否则, 指示所述查询模块查询所述后退页或前进页的页面结构和页面内容数据。 0039 本发明还提供一种 Webapp 终端, 包括 : 发送。
25、模块和接收模块, 0040 所述发送模块, 用于发送显示虚拟页面请求, 所述请求携带虚拟页面的统一资源 定位符 URL, 所述 URL 携带描点信息, 所述描点信息中包括页面 ID、 或包括页面 ID 和页面参 数 ; 0041 所述接收模块, 用于接收虚拟页面的信息。 0042 优选地, 所述终端还包括 : 分配模块, 用于根据预设的页面 ID 和页面参数, 为不同 内容的虚拟页面分配各自唯一的描点信息。 0043 本发明还提供一种Webapp路由系统, 所述系统包括前述的Webapp服务器、 以及前 述的 Webapp 终端。 0044 本发明所提供的一种 Webapp 路由的方法、 服务。
26、器、 终端和系统, 在终端请求虚拟 页面的 URL 携带描点信息, 如此可根据所述描点信息中的页面 ID、 或根据页面 ID 和页面参 数区分不同内容的虚拟页面, 并且, 可以根据所述描点信息中的页面 ID、 或根据页面 ID 和 页面参数查询相应虚拟页面的信息并返回给所述终端, 解决了虚拟页面无法保存的问题 ; 并且, 基于上述处理, 终端用户可以对虚拟页面的 URL 进行传播和引用 ; 通过存储虚拟页面 的描点信息及其改变的先后顺序, 可以确定当前虚拟页面的前进页或后退页, 从而根据对 应的描点信息确定所述前进页或后退页的页面结构和页面内容数据, 发送至所述终端并由 终端加载, 解决了不能。
27、对虚拟页面进行前进或后退操作的问题。 说 明 书 CN 104283920 A 7 4/10 页 8 附图说明 0045 图 1 为本发明实施例所提供的一种 Webapp 路由的方法的实现流程图 ; 0046 图 2 为本发明实施例所提供的一种 Webapp 路由系统的组成结构示意图 ; 0047 图3a为本发明实施例所提供的一种Webapp路由装置为终端请求虚拟页面的信息 的实现流程示意图 ; 0048 图 3b 本发明实施例所提供的一种 Webapp 路由装置实现代码中的功能函数示意 图。 具体实施方式 0049 下面结合附图和具体实施例对本发明的技术方案进一步详细阐述。 0050 本发明。
28、实施例提供一种 Webapp 路由的方法, 如图 1 所示, 主要包括以下步骤 : 0051 步骤 101 : 接收显示虚拟页面请求, 所述请求携带虚拟页面的 URL ; 0052 所述显示虚拟页面请求通常由终端发送给服务器。所述终端根据预设页面 ID 和 页面参数, 为不同内容的虚拟页面分配各自唯一的描点信息, 并在发送显示虚拟页面请求 时在携带的虚拟页面 URL 中携带虚拟页面的描点信息。 0053 例如, 在微博终端中, 可以预设微博不同内容的虚拟页面的 URL 如下 : 0054 首页 : http:/ ; 0055 消息页 : http:/ ; 0056 客人页 : http:/ u。
29、=T283465618 ; 0057 美 食 频 道 页 : http:/ 美食 &cid=170 ; 0058 其中, 描点信息中以 “#” 为起始字符, 并以 “/” 为分隔字符区分描点信息中的页 面序列号 (ID, IDentity) 和页面参数, 当页面 ID 不能唯一确定虚拟页面时, 可以进一步 通过页面参数来唯一确定虚拟页面。例如, 每个微博终端用户的客人页都不相同, 因此, 上 述客人页对应 URL 携带的描点信息 “#guest_home/u=T283465618” 中, 使用页面参数标识 “T283465618” 为唯一确定 ID 为 “T283465618” 的微博终端用户。
30、的客人页。 0059 步骤 102 步骤 104 : 判断所述 URL 是否携带描点信息, 如果携带, 则根据所述描 点信息中的页面 ID、 或根据页面 ID 和页面参数, 查询相应虚拟页面的信息并发送 ; 否则, 查 询预设初始页面的信息并发送。 0060 服务器在收到终端的显示虚拟页面请求后, 判断所述请求携带的 URL 是否携带描 点信息, 如果携带, 则根据所述描点信息中的页面 ID、 或根据页面 ID 和页面参数, 查询相应 虚拟页面的信息并发送给终端 ; 否则, 查询预设初始页面的信息并发送给终端。 0061 所述方法还包括 : 0062 建立虚拟页面的页面 ID 与所述虚拟页面的。
31、页面结构以及页面内容数据接口的映 射关系, 或建立虚拟页面的页面 ID 和页面参数与所述虚拟页面的页面结构以及页面内容 数据接口的映射关系 ; 0063 所述根据所述描点信息中的页面 ID、 或根据页面 ID 和页面参数, 查询相应虚拟页 面的信息, 包括 : 说 明 书 CN 104283920 A 8 5/10 页 9 0064 以所述描点信息中的页面 ID 为索引, 在所述建立的映射关系中查询对应的页面 结构以及页面内容数据接口, 并通过所述页面内容数据接口查询对应的页面内容数据 ; 或 0065 以所述描点信息中的页面 ID 和页面参数为索引, 在所述建立的映射关系中查询 对应的页面结。
32、构以及页面内容数据接口, 并通过所述页面内容数据接口查询对应的页面内 容数据。 0066 其中, 在通过页面ID即可唯一确定虚拟页面时, 建立虚拟页面的页面ID和所述虚 拟页面的页面结构和页面内容数据接口的映射关系 ; 在虚拟页面需要通过页面 ID 和页面 参数唯一确定时, 建立虚拟页面的页面 ID 和页面参数与所述虚拟页面的页面结构的映射 关系、 以及所述虚拟页面的页面 ID 和页面参数与所述虚拟页面的页面内容数据接口的映 射关系。 0067 其中, 所述页面结构和页面内容数据用于供终端加载虚拟页面。 0068 其中, 步骤 101 和步骤 102 为终端虚拟页面首次加载的处理流程。 006。
33、9 当所述终端用户在当前虚拟页面点击链接, 即请求显示与当前虚拟页面不同内容 的虚拟页面时, 由于所述终端为不同内容的虚拟页面各自分配唯一的描点, 因此所述终端 虚拟页面 URL 的描点信息也会对应发生改变。 0070 所述方法还包括 : 监测虚拟页面 URL 携带的描点信息是否改变, 并在确定描点信 息改变时, 根据改变后的描点信息中的页面 ID、 或根据页面 ID 和页面参数, 查询虚拟页面 的页面结构和页面内容数据并发送。 0071 其中, 可以通过在终端绑定哈希改变 (hashchange) 事件监测终端虚拟页面 URL 携 带的描点信息是否改变, 当终端虚拟页面 URL 改变时会触发。
34、 hashchange 事件 ; 对于不支持 hashchange 事件的终端, 可以通过周期性获取当前虚拟页面 URL 的描点信息, 并判断与缓 存的最新的虚拟页面 URL 的描点信息是否相同, 来确定当前虚拟页面 URL 的描点信息是否 改变。 0072 所述方法还包括 : 所述虚拟页面 URL 携带的描点信息改变时, 按照所述描点信息 改变的先后顺序存储所述描点信息 ; 0073 相应的, 所述方法还包括 : 在接收到显示当前虚拟页面的后退页或前进页的请求 时, 根据所述存储的描点信息及其改变的先后顺序确定所述后退页或前进页对应的描点信 息中的页面 ID、 或页面 ID 和页面参数, 并。
35、根据对应的描点信息中的页面 ID、 或根据页面 ID 和页面参数, 查询所述后退页或前进页的页面结构和页面内容数据并发送。 0074 在所述根据对应的描点信息中的页面 ID、 或根据页面 ID 和页面参数, 查询所述后 退页或前进页的页面结构和页面内容数据之前, 所述方法还包括 : 0075 判断所述终端是否缓存所述后退页或前进页的页面结构和页面内容数据, 如果缓 存, 则发送缓存的后退页或前进页的页面结构和页面内容数据 ; 否则, 根据所述描点信息中 的页面 ID、 或根据页面 ID 和页面参数, 查询所述后退页或前进页的页面结构和页面内容数 据并发送。 0076 本发明实施例还提供一种 W。
36、ebapp 路由系统, 如图 2 所示, 所述系统包括 Webapp 终 端 21 和 Webapp 服务器 22 ; 其中, 0077 所述终端 21, 用于根据预设页面 ID 和页面参数, 为不同内容的虚拟页面分配各自 唯一的描点, 并在发送显示虚拟页面请求时在携带的虚拟页面 URL 中携带虚拟页面的描点 说 明 书 CN 104283920 A 9 6/10 页 10 信息 ; 0078 所述 Webapp 服务器 22, 用于接收终端 21 发送的显示虚拟页面请求, 判断所述 URL 是否携带描点信息, 如果携带, 则根据所述描点信息中的页面 ID、 或根据页面 ID 和页面参 数, 。
37、查询相应虚拟页面的信息返回给所述终端 21 ; 否则, 查询预设初始页面的信息并返回 给所述终端 21。 0079 所述 Webapp 服务器 22 包括 : 收发模块 221 和查询模块 222 ; 其中, 0080 所述收发模块 221, 用于显示虚拟页面请求, 所述请求携带虚拟页面的 URL ; 0081 所述查询模块 222, 用于判断所述 URL 是否携带描点信息, 如果携带, 则根据所述 描点信息中的页面 ID、 或根据页面 ID 和页面参数, 查询相应虚拟页面的信息, 否则向查询 预设初始页面的信息 ; 0082 所述收发模块 221 还用于, 发送所述查询模块 222 查询所得。
38、虚拟页面的信息或初 始页面的信息。 0083 所述 Webapp 服务器 22 还包括 : 0084 映射模块 223, 用于建立虚拟页面的页面 ID 与所述虚拟页面的页面结构以及页面 内容数据接口的映射关系, 或建立虚拟页面的页面 ID 和页面参数与所述虚拟页面的页面 结构以及页面内容数据接口的映射关系 ; 0085 相应的, 所述查询模块 222, 还用于以所述描点信息中的页面 ID 为索引, 在所述映 射模块 223 建立的映射关系中查询对应的页面结构和页面内容数据接口, 并通过所述页面 内容数据接口查询对应的页面内容数据 ; 或, 以所述描点信息中的页面 ID 和页面参数为索 引, 在。
39、所述映射模块 223 建立的映射关系中查询对应的页面结构和页面内容数据接口, 并 通过所述页面内容数据接口查询对应的页面内容数据。 0086 所述 Webapp 服务器 22 还包括 : 0087 监测模块 224, 用于监测虚拟页面 URL 携带的描点信息是否改变, 并在确定描点信 息改变时发送所述改变的描点信息至所述查询模块 222 ; 0088 相应的, 所述查询模块 222, 还用于根据所述监测模块 224 发送的描点信息中的页 面 ID、 或根据页面 ID 和页面参数, 查询所述虚拟页面的页面结构和页面内容数据 ; 0089 所述收发模块 221, 还用于将所述查询模块 222 查询。
40、所得的页面结构和页面内容 数据发送至所述终端 21。 0090 所述监测模块 224, 还用于在监测到虚拟页面 URL 携带的描点信息改变时, 按照所 述描点信息改变的先后顺序存储所述描点信息 ; 0091 相应的, 所述查询模块 222, 还用于在所述收发模块 221 接收到显示当前虚拟页 面的后退页或前进页的请求时, 根据所述监测模块 224 存储的描点信息及其改变的先后顺 序, 确定所述后退页或前进页对应的描点信息中的页面 ID、 或页面 ID 和页面参数, 根据所 述页面 ID、 或根据页面 ID 和页面参数, 查询所述后退页或前进页的页面结构和页面内容数 据 ; 0092 所述收发模。
41、块 221, 还用于将所述后退页或前进页的页面结构和页面内容数据发 送至所述终端 21。 0093 所述 Webapp 服务器 22 还包括 : 0094 缓存模块 225, 用于缓存所述查询模块 222 查询所得的初始页面的信息、 和 / 或虚 说 明 书 CN 104283920 A 10 7/10 页 11 拟页面的信息。 0095 缓存模块225还用于在所述查询模块222查询所述后退页或前进页的页面结构和 页面内容数据之前, 缓存模块 225 查询自身是否缓存有所述后退页或前进页的页面结构和 页面内容数据, 如果缓存, 则通过所述收发模块 221 发送缓存的所述后退页或前进页的页 面结。
42、构和页面内容数据至所述终端 21 ; 否则, 指示所述查询模块 222 查询所述后退页或前 进页的页面结构和页面内容数据。 0096 所述 Webapp 终端 21 包括 : 发送模块 211 和接收模块 212, 其中, 0097 发送模块 211, 用于发送显示虚拟页面请求, 所述请求携带虚拟页面的 URL, 所述 URL 携带描点信息, 所述描点信息中包括页面 ID、 或包括页面 ID 和页面参数 ; 0098 所述接收模块 212, 用于接收虚拟页面的信息。 0099 所述 Webapp 终端 21 还包括 : 分配模块 213, 用于根据预设的页面 ID 和页面参数, 为不同内容的虚。
43、拟页面分配各自唯一的描点信息。 0100 需要说明的是, 在实际应用中, 上述服务器侧的功能也可以由位于服务器内部或 外部的特定 Webapp 路由装置来实现。 0101 下面再结合具体实施例详细阐述由 Webapp 路由装置参与实现的 Webapp 路由方 法。 0102 Webapp 路由装置首次为终端获取虚拟页面 A 的数据的实现流程示意图如图 3a 所 示, 包括 : 0103 步骤 301a : 接收终端发送的显示虚拟页面请求, 所述请求携带虚拟页面 A 的 URL ; 0104 步骤 302 步骤 304 : 判断所述 URL 是否携带描点信息, 如果携带, 则根据所述描 点信息中。
44、的页面 ID、 或根据页面 ID 和页面参数, 向 Web 服务器请求虚拟页面 A 的数据返回 给所述终端 ; 否则, 向 Web 服务器请求预设初始页面的信息并返回给所述终端。 0105 对应上述步骤的 Webapp 路由装置的初始化代码如下 : 0106 0107 function init()中, initHashNav()用于检测终端是否支持hashchange事件, 如 果支持, 则为终端绑定hashchange事件与hashChangeHandler(), 将hashChangeHandler() 作为 hashchange 事件的监听器, 在终端触发 hashchange 事件时。
45、由 hashChangeHandler() 为终端存储虚拟页面 URL 的描点信息, 并由 hashChangeHandler() 调用 assignPage() 为终 端请求虚拟页面的信息 ; 否则, 通过chechHash()周期性监测终端虚拟页面URL的描点信息 是否改变, 由于步骤301a中终端首次请求虚拟页面的信息, 即Webapp路由装置首次获取到 虚拟页 A 的 URL 的描点信息, 因此不会触发 hashchange 事件, 相关代码如下 : 0108 说 明 书 CN 104283920 A 11 8/10 页 12 0109 0110 assignPage() 中, 首先从。
46、终端的显示虚拟页面请求携带的 URL 中获取虚拟页面 A 的页面 ID (即代码中的 PageId) , 或页面 ID 以及页面参数 (即代码中的 urlParams) , 如果获 取到的页面 ID 为空值, 则表示所述 URL 不携带描点信息, 则通过调用 require() 获取预设 初始页面 “HOMEPAGE” 的数据 ; 如果获取到的页面 ID 不为空值, 则通过调用 require() 根据 获取页面 ID (即代码中的 PageId) , 或页面 ID 以及页面参数对应的数据, require() 相关代 码如下 : 0111 说 明 书 CN 104283920 A 12 9/。
47、10 页 13 0112 当前虚拟页面为A, 且终端用户点击虚拟页面B的链接时, Webapp路由装置为终端 获取虚拟页面 B 的数据的实现流程图如图 3a 所示, 包括 : 0113 步骤 301b : 终端触发 hashchange 事件, Webapp 路由装置监测到新的 URL ; 0114 步骤 302 步骤 304 : 判断所述 URL 是否携带描点信息, 如果携带, 则根据所述描 点信息中的页面 ID、 或根据页面 ID 和页面参数, 向 Web 服务器请求虚拟页面 A 的信息返回 给所述终端 ; 否则, 向 Web 服务器请求预设初始页面的信息并返回给所述终端。 0115 其中。
48、, 步骤 301b 中的 URL 为虚拟页面 B 的 URL, 由于上述 initHashNav() 在初 始化时已绑定 hashchange 事件与 hashChangeHandler(), 相应的, 当在虚拟页面 A 点击 虚拟页面 B 对应的链接时会触发 hashchange 事件, 因此将执行 hashChangeHandler(), 即保存虚拟页面 A 的 URL 的描点信息, 并调用 assignPage() 请求虚拟页面 B 的数据, hashChangeHandler() 相关代码如下 : 0116 0117 上述代码中, 通过 location.hash 获取虚拟页面 B 的描点信息, 并将虚拟页面 A 的 描点信息存入数组 ohasHistory0, 数组 ohasHistory 的长度通过 HISTORYLENGTH 指定。 0118 本实施例中 Webapp 路由装置实现代码中的功能函数具体如图 3b 所示, 包括 : initHashNav()、 assignPage()、 hashChangeHa。