一种html页面上内容的同步模块化加载方法

文档序号:7816362阅读:323来源:国知局
一种html页面上内容的同步模块化加载方法
【专利摘要】本发明一种html页面上内容的同步模块化加载方法,包括如下步骤:步骤一、根据内容显示的需要,规划每个模块化内容的服务器端数据获取接口;步骤二、注册数据获取接口到配置文件;步骤三、进行html页面上模块化内容显示区域的标识和描述;步骤四、于系统服务器端提供一个部件引擎,当配置完成后的html页面被用户访问时,部件引擎会对用户请求进行拦截,并分析其请求的html页面代码结构,从中过滤出有标记data_render的dom元素。本发明实现动态内容的模块化加载,解决了html页面下动态内容对SEO不友好的问题。
【专利说明】—种html页面上内容的同步模块化加载方法

【技术领域】
[0001]本发明涉及web开发【技术领域】【技术领域】,具体涉及一种html页面上内容的同步模块化加载方法。

【背景技术】
[0002]在html页面上,模块化动态加载内容的实现一般都是采用ajax的方式,这种方式的内容加载可以分解为两步,第一步是在用户打开页面时,先行加载页面基本html和脚本,不包含主要的数据内容;第二步是在页面基本html加载完成后,由页面上的脚本向服务器端发送请求,获取到数据后,再动态显示到第一步加载的dom元素里面,这种方式通常被称作“ajax”。在这种方式下,第二步请求返回的数据在页面上对人眼是可见的,但是在请求得到的页面源码中却是不可见的。然而,搜索引擎对页面进行索引时的依据就是请求得到的页面源码,所以ajax的方式将会导致无法对需要索引的内容编制索引,html页面上动态内容无法索引,对SEO是不友好的。
[0003]故,针对上述现有技术存在的缺陷,实有必要进行开发研究,以提供一种方案,通过弓I入动态向请求中附加内容的方法,解决html页面上动态内容无法索弓I的问题。


【发明内容】

[0004]为解决上述问题,本发明的目的在于提供一种html页面上内容的同步模块化加载方法,以解决html页面上动态内容无法索引的问题。
[0005]为实现上述目的,本发明的技术方案为:
一种html页面上内容的同步模块化加载方法,包括如下步骤:
步骤一、根据内容显示的需要,规划每个模块化内容的服务器端数据获取接口 ;
步骤二、注册数据获取接口到配置文件;
步骤三、进行html页面上模块化内容显示区域的标识和描述;
步骤四、于系统服务器端提供一个部件引擎,当配置完成后的html页面被用户访问时,部件引擎会对用户请求进行拦截,并分析其请求的html页面代码结构,从中过滤出有标记data_render的dom兀素。
[0006]进一步地,步骤一中,进行数据接口描述,约定模块化内容区域数据接口的基本形式和结构。
[0007]进一步地,步骤三中,对html页面上所有在运行时动态从服务器端获取数据并显示内容的动态内容区域进行标识,标识方式为在该区域的dom元素上添加标记data_render并为其赋值,其值是服务器端数据获取接口的name。
[0008]进一步地,步骤四中,在客户端发起请求时,服务器端对请求进行拦截,并分析所请求的html页面,使用data_render对页面dom元素进行过滤,对于过滤到的dom元素,通过其data_render的值,在服务器端动态反射其所需数据接口的实例,并通过调用GetData方法获得所需数据,然后附加到这个dom元素中。
[0009]相较于现有技术,本发明html页面上内容的同步模块化加载方法能够在html类型的页面中,实现动态内容的模块化加载,解决了 html页面下动态内容对SEO不友好的问题。同一个服务器端数据结构,通过传入不同的参数,可以加载不同的数据,形成对数据接口的复用。

【专利附图】

【附图说明】
[0010]图1为本发明的方法流程图示。
[0011]图2为本发明架构图示。

【具体实施方式】
[0012]本发明实施例提供了一种html页面上内容的同步模块化加载方法能够在html类型的页面中,实现动态内容的模块化加载,解决了 html页面下动态内容对SEO不友好的问题。同一个服务器端数据结构,通过传入不同的参数,可以加载不同的数据,形成对数据接口的复用。
[0013]为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域的技术人员所获得的所有其他实施例,都属于本发明保护的范围。
[0014]本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本发明的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。
[0015]以下分别进行详细说明。
[0016]请参照图1、图2所示,本发明html页面上内容的同步模块化加载方法,包括如下步骤:
步骤一、根据内容显示的需要,规划每个模块化内容的服务器端数据获取接口 ;
进行数据接口描述,约定模块化内容区域数据接口的基本形式和结构,对应页面上各个模块化内容区域的数据接口实现该接口。数据接口根据统一接口定义要求,主要实现GetData方法。本发明实施例中,统一接口定义如下:public interface IPortlet{ public string GetData(object param)
}
步骤二、注册数据获取接口到配置文件
在服务器端配置文件中通过形如〈add name= 〃SinaRssNews〃 value=〃GenerSoft.EPP.RSS.RSSReader, GenerSoft.EPP.RSS〃 />的方式注册接口调用名称、程序集反射入口。实现了 IPortlet接口的数据接口要在接口描述文档中进行注册,注册时主要指明其name、value和params,其中name是其全局唯一调用标记;value是其用于.NET反射的程序及名称。
[0017]步骤三、进行html页面上模块化内容显示区域的标识和描述
对html页面上所有在运行时动态从服务器端获取数据并显示内容的动态内容区域进行标识,标识方式为在该区域的dom元素上添加标记data_render并为其赋值,其值是服务器端数据获取接口的name ;params是其所需参数,json字符串类型,配置完成后的dom元素,形如:
< d i V id = 〃sina_news〃 data_render = 〃SinaRssNews" params = 〃{url:' http:, itemsCount:8}〃 ></div>
步骤四、于系统服务器端提供一个部件引擎,当配置完成后的html页面被用户访问时,部件引擎会对用户请求进行拦截,并分析其请求的html页面代码结构,从中过滤出有标记data_render的dom兀素。
[0018]具体地,在客户端发起请求时,服务器端对请求进行拦截,并分析所请求的html页面,使用data_render对页面dom元素进行过滤,对于过滤到的dom元素,通过其data_render的值,在服务器端动态反射其所需数据接口的实例,并通过调用GetData方法获得所需数据,然后附加到这个dom元素中。实现代码如下:
public class PortletHandler:1HttpHandler
{
public bool IsReusable
{
在过滤出所有标记有data_render的dom元素后,根据data_render的值,获取到对应的数据接口程序集名称,并利用.NET的反射机制实例化该程序集,并调用其GetData方法获取数据,填充到对应的动态内容区域。所有内容区域的数据获取完毕后,部件引擎把处理后的html内容Response到客户端用户浏览器。
[0019]通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本发明而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM, Random Access Memory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
[0020]综上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照上述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对上述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
【权利要求】
1.一种html页面上内容的同步模块化加载方法,其特征在于,包括如下步骤: 步骤一、根据内容显示的需要,规划每个模块化内容的服务器端数据获取接口 ; 步骤二、注册数据获取接口到配置文件; 步骤三、进行html页面上模块化内容显示区域的标识和描述; 步骤四、于系统服务器端提供一个部件引擎,当配置完成后的html页面被用户访问时,部件引擎会对用户请求进行拦截,并分析其请求的html页面代码结构,从中过滤出有标记data_render的dom兀素。
2.如权利要求1所述html页面上内容的同步模块化加载方法,其特征在于:步骤一中,进行数据接口描述,约定模块化内容区域数据接口的基本形式和结构。
3.如权利要求2所述html页面上内容的同步模块化加载方法,其特征在于:步骤三中,对html页面上所有在运行时动态从服务器端获取数据并显示内容的动态内容区域进行标识,标识方式为在该区域的dom元素上添加标记data_render并为其赋值,其值是服务器端数据获取接口的name。
4.如权利要求3所述html页面上内容的同步模块化加载方法,其特征在于:步骤四中,在客户端发起请求时,服务器端对请求进行拦截,并分析所请求的html页面,使用data_render对页面dom元素进行过滤,对于过滤到的dom元素,通过其data_render的值,在服务器端动态反射其所需数据接口的实例,并通过调用GetData方法获得所需数据,然后附加到这个dom元素中。
【文档编号】H04L29/08GK104270447SQ201410526835
【公开日】2015年1月7日 申请日期:2014年10月9日 优先权日:2014年10月9日
【发明者】田尚杰 申请人:浪潮通用软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1