书签 分享 收藏 举报 版权申诉 / 12

一种基于互联网网页的渲染刷新实现方法及装置.pdf

  • 上传人:1****2
  • 文档编号:1741677
  • 上传时间:2018-07-08
  • 格式:PDF
  • 页数:12
  • 大小:781.60KB
  • 摘要
    申请专利号:

    CN201510220673.2

    申请日:

    2015.05.04

    公开号:

    CN104850602A

    公开日:

    2015.08.19

    当前法律状态:

    实审

    有效性:

    审中

    法律详情:

    实质审查的生效IPC(主分类):G06F 17/30申请日:20150504|||公开

    IPC分类号:

    G06F17/30; G06F9/44

    主分类号:

    G06F17/30

    申请人:

    微梦创科网络科技(中国)有限公司

    发明人:

    熊国庆; 朱毅; 王政

    地址:

    100080北京市海淀区北四环西路58号理想国际大厦17层

    优先权:

    专利代理机构:

    北京和信华成知识产权代理事务所(普通合伙)11390

    代理人:

    胡剑辉

    PDF完整版下载: PDF下载
    内容摘要

    本发明实施例提供一种基于互联网网页的渲染刷新实现方法及装置,所述方法包括:当一客户端的某一网页对应的整个页面中的一个或多个页面模块刷新时,获取所述一个或多个页面模块的刷新数据;将所述一个或多个页面模块的刷新数据渲染到所述网页对应的整个页面中,替换原来所述一个或多个页面模块的原数据,并将所述网页对应的当前浏览器的URL地址修改为新的URL地址。本发明实现了在不刷新页面的情况下,动态改变浏览器的地址栏URL,方便网站内容分享;完美兼容各种浏览器记录,实现动态改变浏览器地址,不刷新页面实现功能页面切换;通过pagelets刷新进行一次服务器请求实现页面功能增量切换,减少服务器连接数;在同域页面浏览历史记录最小化,减少冗余历史记录。

    权利要求书

    权利要求书
    1.  一种基于互联网网页的渲染刷新实现方法,其特征在于,所述方法包括:
    当一客户端的某一网页对应的整个页面中的一个或多个页面模块刷新时,获取所述一个或多个页面模块的刷新数据;
    将所述一个或多个页面模块的刷新数据渲染到所述网页对应的整个页面中,替换原来所述一个或多个页面模块的原数据,并将所述网页对应的当前浏览器的统一资源定位符URL地址修改为新的URL地址。

    2.  如权利要求1所述基于互联网网页的渲染刷新实现方法,其特征在于,所述将所述网页对应的当前浏览器的统一资源定位符URL地址修改为新的URL地址,包括:
    通过封装页面浏览历史记录管理类historyM将所述网页对应的当前浏览器的统一资源定位符URL地址修改为新的URL地址。

    3.  如权利要求2所述基于互联网网页的渲染刷新实现方法,其特征在于,所述通过封装页面浏览历史记录管理类historyM将所述网页对应的当前浏览器的统一资源定位符URL地址修改为新的URL地址,包括:
    判断当前浏览器是否支持封装页面浏览历史记录管理类historyM中的替换地址replaceState/操作地址栏地址方法pushState:若所述当前浏览器支持replaceState/pushState,则使用replaceState/pushState将所述网页对应的当前浏览器的URL地址修改为新的URL地址。

    4.  如权利要求3所述基于互联网网页的渲染刷新实现方法,其特征在于,所述方法还包括:
    若所述当前浏览器不支持replaceState/pushState,则判断当前浏览器是否支持浏览器哈希改变事件onhashChange事件:若所述当前浏览器支持onhashChange事件,则通过修改本地哈希location.hash地址来将所述网页对应的当前浏览器的URL地址动态修改为新的URL地址。

    5.  如权利要求4所述基于互联网网页的渲染刷新实现方法,其特征在于,所述方法还包括:
    若所述当前浏览器不支持onhashChange事件,则通过动态创建浏览器标签iframe插入文档流方式,将所述网页对应的当前浏览器的URL地址动态修改为新的URL地址。

    6.  一种基于互联网网页的渲染刷新实现装置,其特征在于,所述装置包括:
    获取单元,用于当一客户端的某一网页对应的整个页面中的一个或多个页面模块刷新时,获取所述一个或多个页面模块的刷新数据;
    渲染刷新单元,用于将所述一个或多个页面模块的刷新数据渲染到所述网页对应的整个页面中,替换原来所述一个或多个页面模块的原数据;
    地址修改单元,用于将所述网页对应的当前浏览器的统一资源定位符URL地址修改为新的URL地址。

    7.  如权利要求6所述基于互联网网页的渲染刷新实现装置,其特征在于,
    所述地址修改单元,具体用于通过封装页面浏览历史记录管理类historyM将所述网页对应的当前浏览器的统一资源定位符URL地址修改为新的URL地址。

    8.  如权利要求7所述基于互联网网页的渲染刷新实现装置,其特征在于,
    所述地址修改单元,进一步具体用于判断当前浏览器是否支持封装页面浏览历史记录管理类historyM中的替换地址replaceState/操作地址栏地址方法pushState:若所述当前浏览器支持replaceState/pushState,则使用replaceState/pushState将所述网页对应的当前浏览器的URL地址修改为新的URL地址。

    9.  如权利要求8所述基于互联网网页的渲染刷新实现装置,其特征在于,
    所述地址修改单元,进一步具体用于若所述当前浏览器不支持replaceState/pushState,则判断当前浏览器是否支持浏览器哈希改变事件onhashChange事件:若所述当前浏览器支持onhashChange事件,则通过修改location.hash地址来将所述网页对应的当前浏览器的URL地址动态修改为新的URL地址。

    10.  如权利要求9所述基于互联网网页的渲染刷新实现装置,其特征在于,
    所述地址修改单元,进一步具体用于若所述当前浏览器不支持onhashChange事件,则通过动态创建浏览器标签iframe插入文档流方式,将所述网页对应的当前浏览器的URL地址动态修改为新的URL地址。

    说明书

    说明书一种基于互联网网页的渲染刷新实现方法及装置
    技术领域
    本发明涉及互联网技术领域,尤其涉及一种基于互联网网页的渲染刷新实现方法及装置。
    背景技术
    随着互联网在国内的日新月异的发展,web应用(浏览器网站应用)在internet(互联网)上广泛使用。用户每浏览一次网页都会生成一次历史记录,用户可以在历史记录中查看每次浏览的历史记录。
    现有技术web 1.0应用通过超链接实现页面跳转并生成历史记录,每次页面跳转都会产生记录,可以在历史记录中自由切换回到历史访问的网站页面。但每次页面之间切换都会刷新整个页面,并在历史记录中生成一条历史记录,不管是否在同一网站不同模块之间切换,导致在历史记录中有多个同一网站大量的历史记录。
    随着AJAX(AJAX:Asynchronous Javascript And XML异步JavaScript(脚本)和XML(Extensible Markup Language可扩展标记语言),是指一种创建交互式网页应用的网页开发技术)技术在web开发广泛使用,通过XHR(ajax异步请求对象)请求后台数据,javascript(脚本)解析数据并转换成html(超文本标记语言,Hyper Text Markup Language)节点渲染文档流。从而实现从服务器获取相关数据局部模块刷新,优化用户交互体验。浏览器不会生成浏览记录,刷新模块或者页面刷新时会产生大量并发请求http(超文本传输协议,HyperText Transfer Protocol)请求,导致服务器压力过大。
    现有技术web1.0技术缺点:用户访问同一个web站点(网站),网站地址为http://weibo.com/a.com(网站地址),在网站功能页面切换。通过超链接跳转将生成多个weibo.com(域名)的历史记录,历史记录将随着访问次数线性增长。历史记录冗余,不方便管理,占用用户磁盘空间,而且整页刷新页面,用户体验不好。
    AJAX没有完美解决历史记录方案,无法按照需要配置刷新模块,而且服务器瞬间请求压力较大。用户交互体验一般。
    bigbipe(页面按模块加载):是一个重新设计的基础动态网页服务体系。网页按模块 功能分解成Pagelets(单个模块)块,然后通过Web服务器(网络环境下为客户提供服务的专用计算机)和浏览器建立管道并管理他们在不同阶段的运行。这是类似于大多数现代微处理器的流水线执行过程:多重指令管线通过不同的处理器执行单元,以达到性能的最佳。
    Pagelets(单个模块):一个模块称为一个pagelets模块。模块通过框架提供的注册方法将模块注册进内存并执行。框架提供方法(注册)register(ns(参数):模块标示,domid(参数):容器标示,html(参数):模块渲染字符串,js(参数):脚本地址,css(参数):样式地址),来完成模块的样式加载、页面渲染、执行脚本的步骤。每个模块提供destroy(销毁方法),便于在切换页面时,框架将不使用的模块销毁,释放占用的内存。
    微博采用bigpipe按模块按需输出,只要模块加载完成后,就可以与其交互,模块间不耦合。
    分块传输编码(Chunked transfer encoding):是超文本传输协议(HTTP)中的一种数据传输机制,允许HTTP由网页服务器发送给客户端应用(通常是网页浏览器)的数据可以分成多个部分。分块传输编码只在HTTP协议(超文本传输协议)1.1版本(HTTP/1.1)(超文本传输协议1.1版本)中提供。
    通常,HTTP(超文本传输协议)应答消息中发送的数据是整个发送的,Content-Length(内容长度)消息头字段表示数据的长度。数据的长度很重要,因为客户端需要知道哪里是应答消息的结束,以及后续应答消息的开始。然而,使用分块传输编码,数据分解成一系列数据块,并以一个或多个块发送,这样服务器可以发送数据而不需要预先知道发送内容的总大小。
    Pagelets(模块)刷新:页面切换一次刷新,输出改变内容的Pagelets模块,改变需要Pagelets对应的模块,实现页面模块无刷新切换。
    bigbipe(页面按模块加载)技术实现多模块并行和可控输出,增加模块的可复用率。模块之间不耦合,模块之间不相互依赖,模块可以独立运行,模块可以并发随机加载。只要Pagelets(单个模块)输出完成立即渲染,模块立即使用交互,不管其他模块是否加载完成。实现模块并行加载,优化模块加载顺序,模块按流水线方式加载使用,优化用户体验。
    现有技术将整个页面按功能分模块,模块之间相互不依赖。页面切换时,只是通过算法chunked(分块传输)输出需要修改的模块替换原来模块,而公共模块则不更新修改,从而达到页面切换的功能。Chunked输出(分块传输)修改只一次http请求(超文本传输协议HyperText Transfer Protocol)完成页面功能切换。由于页面没有刷新,地址栏不会修 改,如何实现无刷新并修改页面URL地址?例如:从http://weibo.com/a.html(网站地址)跳转到http://weibo.com/b.html(网站地址),现有技术的方式为刷新整个页面,通过链接跳转到http://weibo.com/b.html(网站地址)。这样顶部导航、左侧导航、底部模块都会重新请求刷新,由此造成网络传输数据增大,网络带宽增加,服务器负荷增大,因此,如何实现无刷新并修改页面URL地址,这是本领域的技术人员亟待解决的一个技术问题。
    发明内容
    本发明实施例提供一种基于互联网网页的渲染刷新实现方法及装置,以实现无刷新并修改页面URL地址。
    一方面,本发明实施例提供了一种基于互联网网页的渲染刷新实现方法,所述方法包括:
    当一客户端的某一网页对应的整个页面中的一个或多个页面模块刷新时,获取所述一个或多个页面模块的刷新数据;
    将所述一个或多个页面模块的刷新数据渲染到所述网页对应的整个页面中,替换原来所述一个或多个页面模块的原数据,并将所述网页对应的当前浏览器的统一资源定位符URL地址修改为新的URL地址。
    另一方面,本发明实施例提供了一种基于互联网网页的渲染刷新实现装置,所述装置包括:
    获取单元,用于当一客户端的某一网页对应的整个页面中的一个或多个页面模块刷新时,获取所述一个或多个页面模块的刷新数据;
    渲染刷新单元,用于将所述一个或多个页面模块的刷新数据渲染到所述网页对应的整个页面中,替换原来所述一个或多个页面模块的原数据;
    地址修改单元,用于将所述网页对应的当前浏览器的统一资源定位符URL地址修改为新的URL地址。
    上述技术方案具有如下有益效果:实现了在不刷新页面的情况下,动态改变浏览器的地址栏URL,方便网站内容分享;完美兼容各种浏览器记录,实现动态改变浏览器地址,不刷新页面实现功能页面切换;通过pagelets刷新进行一次服务器请求实现页面功能增量切换,减少服务器连接数;在同域页面浏览历史记录最小化,减少冗余历史记录。
    附图说明
    为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
    图1为本发明实施例一种基于互联网网页的渲染刷新实现方法流程图;
    图2为本发明实施例一种基于互联网网页的渲染刷新实现装置结构示意图;
    图3为本发明应用实例模块E和模块F刷新示意图;
    图4为本发明应用实例一种基于互联网网页的渲染刷新实现方法流程图。
    具体实施方式
    下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
    如图1所示,为本发明实施例一种基于互联网网页的渲染刷新实现方法流程图,所述方法包括:
    101、当一客户端的某一网页对应的整个页面中的一个或多个页面模块刷新时,获取所述一个或多个页面模块的刷新数据;
    102、将所述一个或多个页面模块的刷新数据渲染到所述网页对应的整个页面中,替换原来所述一个或多个页面模块的原数据,并将所述网页对应的当前浏览器的统一资源定位符URL地址修改为新的URL地址。
    优选的,所述将所述网页对应的当前浏览器的统一资源定位符URL地址修改为新的URL地址,包括:通过封装页面浏览历史记录管理类historyM将所述网页对应的当前浏览器的统一资源定位符URL地址修改为新的URL地址。
    优选的,所述通过封装页面浏览历史记录管理类historyM将所述网页对应的当前浏览器的统一资源定位符URL地址修改为新的URL地址,包括:判断当前浏览器是否支持封装页面浏览历史记录管理类historyM中的替换地址replaceState/操作地址栏地址方法pushState:若所述当前浏览器支持replaceState/pushState,则使用replaceState/pushState将 所述网页对应的当前浏览器的URL地址修改为新的URL地址。
    优选的,所述方法还包括:若所述当前浏览器不支持replaceState/pushState,则判断当前浏览器是否支持浏览器哈希改变事件onhashChange事件:若所述当前浏览器支持onhashChange事件,则通过修改location.hash(本地哈希)地址来将所述网页对应的当前浏览器的URL地址动态修改为新的URL地址。
    优选的,所述方法还包括:若所述当前浏览器不支持onhashChange事件,则通过动态创建浏览器标签iframe插入文档流方式,将所述网页对应的当前浏览器的URL地址动态修改为新的URL地址。
    对应于上述方法实施例,如图2所示,为本发明实施例一种基于互联网网页的渲染刷新实现装置结构示意图,所述装置包括:
    获取单元21,用于当一客户端的某一网页对应的整个页面中的一个或多个页面模块刷新时,获取所述一个或多个页面模块的刷新数据;
    渲染刷新单元22,用于将所述一个或多个页面模块的刷新数据渲染到所述网页对应的整个页面中,替换原来所述一个或多个页面模块的原数据;
    地址修改单元23,用于将所述网页对应的当前浏览器的统一资源定位符URL地址修改为新的URL地址。
    优选的,所述地址修改单元23,具体用于通过封装页面浏览历史记录管理类historyM将所述网页对应的当前浏览器的统一资源定位符URL地址修改为新的URL地址。
    优选的,所述地址修改单元23,进一步具体用于判断当前浏览器是否支持封装页面浏览历史记录管理类historyM中的替换地址replaceState/操作地址栏地址方法pushState:若所述当前浏览器支持replaceState/pushState,则使用replaceState/pushState将所述网页对应的当前浏览器的URL地址修改为新的URL地址。
    优选的,所述地址修改单元23,进一步具体用于若所述当前浏览器不支持replaceState/pushState,则判断当前浏览器是否支持浏览器哈希改变事件onhashChange事件:若所述当前浏览器支持onhashChange事件,则通过修改location.hash地址来将所述网页对应的当前浏览器的URL地址动态修改为新的URL地址。
    优选的,所述地址修改单元23,进一步具体用于若所述当前浏览器不支持onhashChange事件,则通过动态创建浏览器标签iframe插入文档流方式,将所述网页对应的当前浏览器的URL地址动态修改为新的URL地址。
    本发明实施例上述技术方案具有如下有益效果:实现了在不刷新页面的情况下,动态 改变浏览器的地址栏URL,方便网站内容分享;完美兼容各种浏览器记录,实现动态改变浏览器地址,不刷新页面实现功能页面切换;通过pagelets刷新进行一次服务器请求实现页面功能增量切换,减少服务器连接数;在同域页面浏览历史记录最小化,减少冗余历史记录。
    以下通过应用实例对本发明实施例上述技术方案进行详述:
    本发明应用实例实现跳转页面模块(以下简称模块)与当前模块需要修改的模块,(如图3所示,为本发明应用实例模块E和模块F刷新示意图)渲染到页面中,替换原来的模块A和模块C,实现页面无刷新切换(模块B、模块D、顶部导航、左侧导航、底部导航均不刷新),并将当前的浏览器地址http://weibo.com/a.html修改为http://weibo.com/b.html。每次页面切换渲染修改地址栏地址后,用户可以复制URL(统一资源定位符)地址到其他电脑中访问,渲染内容和URL(统一资源定位符)当前内容一致。
    URL(统一资源定位符):由以下部分组成:protocol(协议类型)+hostname(主机名)+port(端口号)+path(路径)+?query(查询)(可选,用于给动态网页(传递参数,可有多个参数,用“&”符号隔开,每个参数的名和值用“=”符号隔开)+#hash(哈希)。
    本发明应用实例通过封装historyM(页面浏览历史记录管理类),通过提供以下方法集合:setQuery(设置浏览器地址查询参数方法)、pushState(操作地址栏地址方法)、onpopstate(添加地址栏改变回调方法)、removePopstate(移除地址栏改变回调方法)、replaceState(替换地址)、parseURL(解析当前地址方法)等方法,方便用户动态修改浏览器地址,实现在同域网站无刷新页面切换后地址栏修改的功能。用户进行前进/后退功能时,也不产生历史记录。
    如图4所示,为本发明应用实例一种基于互联网网页的渲染刷新实现方法流程图,包括:
    401、当一客户端的某一网页对应的整个页面中的一个或多个页面模块刷新时,获取所述一个或多个页面模块的刷新数据;
    402、将所述一个或多个页面模块的刷新数据渲染到所述网页对应的整个页面中,替换原来所述一个或多个页面模块的原数据;
    403、判断当前浏览器是否支持replaceState/pushState:若所述当前浏览器支持replaceState/pushState,则转404;若所述当前浏览器不支持replaceState/pushState,则转405;
    404、使用replaceState/pushState将所述网页对应的当前浏览器的URL地址修改为新的URL地址,然后转408。
    405、判断当前浏览器是否支持onhashChange事件:若所述当前浏览器支持onhashChange事件,则转406;若所述当前浏览器不支持onhashChange事件,则转407;
    406、通过修改location.hash地址来将所述网页对应的当前浏览器的URL地址动态修改为新的URL地址,然后转408。
    407、通过动态创建iframe插入文档流方式,将所述网页对应的当前浏览器的URL地址动态修改为新的URL地址,然后转408。
    408、结束。
    本发明应用实例上述技术方案实现了在不刷新页面的情况下,动态改变浏览器的地址栏URL,方便网站内容分享;完美兼容各种浏览器记录,实现动态改变浏览器地址,不刷新页面实现功能页面切换;通过pagelets刷新进行一次服务器请求实现页面功能增量切换,减少服务器连接数;在同域页面浏览历史记录最小化,减少冗余历史记录。
    本领域技术人员还可以了解到本发明实施例列出的各种说明性逻辑块(illustrative logical block),单元,和步骤可以通过电子硬件、电脑软件,或两者的结合进行实现。为清楚展示硬件和软件的可替换性(interchangeability),上述的各种说明性部件(illustrative components),单元和步骤已经通用地描述了它们的功能。这样的功能是通过硬件还是软件来实现取决于特定的应用和整个系统的设计要求。本领域技术人员可以对于每种特定的应用,可以使用各种方法实现所述的功能,但这种实现不应被理解为超出本发明实施例保护的范围。
    本发明实施例中所描述的各种说明性的逻辑块,或单元都可以通过通用处理器,数字信号处理器,专用集成电路(ASIC),现场可编程门阵列或其它可编程逻辑装置,离散门或晶体管逻辑,离散硬件部件,或上述任何组合的设计来实现或操作所描述的功能。通用处理器可以为微处理器,可选地,该通用处理器也可以为任何传统的处理器、控制器、微控制器或状态机。处理器也可以通过计算装置的组合来实现,例如数字信号处理器和微处理器,多个微处理器,一个或多个微处理器联合一个数字信号处理器核,或任何其它类似的配置来实现。
    本发明实施例中所描述的方法或算法的步骤可以直接嵌入硬件、处理器执行的软件模块、或者这两者的结合。软件模块可以存储于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM或本领域中其它任意 形式的存储媒介中。示例性地,存储媒介可以与处理器连接,以使得处理器可以从存储媒介中读取信息,并可以向存储媒介存写信息。可选地,存储媒介还可以集成到处理器中。处理器和存储媒介可以设置于ASIC中,ASIC可以设置于用户终端中。可选地,处理器和存储媒介也可以设置于用户终端中的不同的部件中。
    在一个或多个示例性的设计中,本发明实施例所描述的上述功能可以在硬件、软件、固件或这三者的任意组合来实现。如果在软件中实现,这些功能可以存储与电脑可读的媒介上,或以一个或多个指令或代码形式传输于电脑可读的媒介上。电脑可读媒介包括电脑存储媒介和便于使得让电脑程序从一个地方转移到其它地方的通信媒介。存储媒介可以是任何通用或特殊电脑可以接入访问的可用媒体。例如,这样的电脑可读媒体可以包括但不限于RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁性存储装置,或其它任何可以用于承载或存储以指令或数据结构和其它可被通用或特殊电脑、或通用或特殊处理器读取形式的程序代码的媒介。此外,任何连接都可以被适当地定义为电脑可读媒介,例如,如果软件是从一个网站站点、服务器或其它远程资源通过一个同轴电缆、光纤电缆、双绞线、数字用户线(DSL)或以例如红外、无线和微波等无线方式传输的也被包含在所定义的电脑可读媒介中。所述的碟片(disk)和磁盘(disc)包括压缩磁盘、镭射盘、光盘、DVD、软盘和蓝光光盘,磁盘通常以磁性复制数据,而碟片通常以激光进行光学复制数据。上述的组合也可以包含在电脑可读媒介中。
    以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

    关 键  词:
    一种 基于 互联网 网页 渲染 刷新 实现 方法 装置
      专利查询网所有文档均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:一种基于互联网网页的渲染刷新实现方法及装置.pdf
    链接地址:https://www.zhuanlichaxun.net/p-1741677.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
    经营许可证编号:粤ICP备2021068784号-1