专利名称:浏览器内核适配的方法和浏览器的制作方法
技术领域:
本发明涉及计算机互联网领域,特别涉及一种浏览器内核适配的方法和浏览器。
背景技术:
在移动终端上使用浏览器浏览网页时,通常都通过浏览器的内核对网页语法进行解释并渲染网页。浏览器内核也是指浏览器所采用的渲染引擎,渲染引擎决定了浏览器如何显示网页的内容以及页面的格式信息。不同的浏览器内核对网页编写语法的解释也有不同,因此同一网页在不同内核的浏览器里的渲染效果也可能不同。目前常见的浏览器内核主要包括以下几种一种是浏览器开发方提供的内核 ’另一种是浏览器所在的移动终端提供的浏览器内核;还有一种是后台中转,也可以看作是云端内核。现有移动终端的浏览器通常使用默认的浏览器内核来实现浏览器的各种操作,如默认浏览器开发方提供的内核等,这种情况下浏览器内核是固定不变的,在用户浏览的过程中无法实现自动适配浏览器内核,影响用户使用浏览器的体验。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种浏览器内核适配的方法和浏览器。所述技术方案如下一种浏览器内核适配的方法,包括浏览器接收用户浏览页面的请求;所述浏览器根据 所述请求从服务器获取所述页面的信息,并根据所述页面的信息,确定所述页面的类型;所述浏览器根据所述页面的类型选择浏览器内核,并使用所述浏览器内核处理所述请求。所述浏览器根据所述请求从服务器获取所述页面的信息,并根据所述页面的信息,确定所述页面的类型,包括所述浏览器根据所述请求向服务器发送超文本传输协议HTTP请求消息,并接收所述服务器返回的HTTP响应消息;获取所述HTTP响应消息中的内容类型;判断所述内容类型是无线标记语言丽L还是超文本标记语言HTML ;如果所述内容类型是WML,则确定所述页面的类型为无线应用协议WAP类型;如果所述内容类型时HTML,则确定所述页面的类型为网络WEB类型。获取所述HTTP响应消息中的内容类型之前,还包括判断所述HTTP响应消息中是否包含内容类型;如果所述HTTP响应消息中包含内容类型,则执行获取所述HTTP响应消息中的内容类型的步骤;如果所述HTTP响应消息中不包含内容类型,则确定所述页面的类型为未知类型。
所述浏览器根据所述页面的类型选择浏览器内核,包括如果所述页面的类型是WAP类型,则选择浏览器开发方提供的浏览器内核;如果所述页面的类型不是WAP类型,则选择浏览器开发方提供的浏览器内核、或所述浏览器所在移动终端提供的浏览器内核、或选择后台中转。如果所述页面的类型不是WAP类型,则选择浏览器开发方提供的浏览器内核、或所述浏览器所在移动终端提供的浏览器内核、或选择后台中转,包括如果所述页面的类型不是WAP类型,则判断所述页面的第一片数据是否为“〈 xml ” ;如果所述第一片数据是“〈 xml”,则选择浏览器开发方提供的浏览器内核;如果所述第一片数据不是“〈 xml”,则判断所述浏览器所在移动终端是否为万维网WWW代理模式;如果是WWW代理模式,则选择后台中转;如果不是WWW代理模式,则选择所述浏览器所在移动终端提供的浏览器内核。一种浏览器,包括接收模块,用于接收用户浏览页面的请求;确定模块,用于根据所述请求从服务器获取所述页面的信息,并根据所述页面的信息,确定所述页面的类型;选择模块,用于 根据所述页面的类型选择浏览器内核,并使用所述浏览器内核处理所述请求。所述确定模块包括请求单元,用于根据所述请求向服务器发送超文本传输协议HTTP请求消息,并接收所述服务器返回的HTTP响应消息;获取单元,用于获取所述HTTP响应消息中的内容类型;确定单元,用于判断所述内容类型是无线标记语言WML还是超文本标记语言HTML,如果所述内容类型是WML,则确定所述页面的类型为无线应用协议WAP类型;如果所述内容类型时HTML,则确定所述页面的类型为网络WEB类型。所述获取单元用于判断所述HTTP响应消息中是否包含内容类型;如果所述HTTP响应消息中包含内容类型,则获取所述HTTP响应消息中的内容类型;如果所述HTTP响应消息中不包含内容类型,则确定所述页面的类型为未知类型。所述选择模块包括第一选择单元,用于如果所述页面的类型是WAP类型,则选择浏览器开发方提供的浏览器内核;第二选择单元,用于如果所述页面的类型不是WAP类型,则选择浏览器开发方提供的浏览器内核、或所述浏览器所在移动终端提供的浏览器内核、或选择后台中转。所述第二选择单元用于如果所述页面的类型是WEB类型,则判断所述页面的第一片数据是否为“〈? xml”;如果所述第一片数据是“〈? xml”,则选择浏览器开发方提供的浏览器内核;如果所述第一片数据不是“〈? xml”,则判断所述浏览器所在移动终端是否为万维网WWW代理模式;如果是WWW代理模式,则选择后台中转;如果不是WWW代理模式,则选择所述浏览器所在移动终端提供的浏览器内核。
本发明实施例提供的技术方案带来的有益效果是通过获取用户请求浏览的页面的信息,并确定页面的类型,根据页面类型选择合适的浏览器内核,用选择的浏览器内核处理用户浏览页面的请求,实现了用户在浏览页面过程中浏览器内核的自动适配功能,解决了现有技术浏览器内核无法自动适配的问题。其中,针对WAP页面类型自动使用轻便的浏览器开发方提供的内核渲染;或者,针对WWW代理模式,适配后台中转,可以节省流量;或者,适配浏览器所在的移动终端提供的浏览器内核渲染,效果更加逼真,极大地增强了用户使用浏览器的体验。
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本发明实施例1提供的浏览器内核适配的方法流程图;图2是本发明实施例2提供的浏览器内核适配的方法流程图;图3是本发明实施例3提供的浏览器的一种结构图;图4是本发明实施例3提供的浏览器的另一种结构图。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。实施例1 参见图1,本实施例提供了一种浏览器内核适配的方法,包括101 :浏览器接收用户浏览页面的请求;102:浏览器根据该请求从服务器获取页面的信息,并根据获取的页面的信息,确定页面的类型;103 :浏览器根据确定的页面的类型选择浏览器内核,并使用所选择的浏览器内核处理该请求。本实施例中的页面是指在WWW (World Wide Web,万维网)上的一个超媒体文档,SPpage,通常又称为网页。本实施例中,步骤102可以包括浏览器根据请求向服务器发送HTTP (HyperText Transfer Protocol,超文本传输协议)请求消息,并接收服务器返回的HTTP响应消息;获取HTTP响应消息中的内容类型;判断内容类型是WML (Wireless Markup Language,无线标记语言)还是HTML (HyperTextMarkup Language,超文本标记语言);如果内容类型是WML,则确定页面的类型为WAP (Wireless Application Protocol,无线应用协议)类型;如果内容类型时HTML,则确定页面的类型为WEB(网络)类型。进一步地,所述获取HTTP响应消息中的内容类型之前,还可以包括判断HTTP响应消息中是否包含内容类型;如果HTTP响应消息中包含内容类型,则执行获取HTTP响应消息中的内容类型的步骤;如果HTTP响应消息中不包含内容类型,则确定页面的类型为未知类型。本实施例中,步骤103中所述浏览器根据页面的类型选择浏览器内核,可以包括如果页面的类型是WAP类型,则选择浏览器开发方提供的浏览器内核;如果页面的类型不是WAP类型,则选择浏览器开发方提供的浏览器内核、或浏览器所在移动终端提供的浏览器内核、或选择后台中转。进一步地,所述如果页面的类型不是WAP类型,则选择浏览器开发方提供的浏览器内核、或浏览器所在移动终端提供的浏览器内核、或选择后台中转,可以包括如果页面的类型不是WAP类型,则判断页面的第一片数据是否为“〈 xml”;如果第一片数据是“〈? xml”,则选择浏览器开发方提供的浏览器内核;如果第一片数据不是“〈? xml ”,则判断浏览器所在移动终端是否为万维网WWW代理模式;如果是WWW代理模式,则选择后台中转;如果不是WWW代理模式,则选择浏览器所在移动终端提供的浏览器内核。本实施例中的浏览器通常位于移动终端中,如手机等。
本实施例提供的上述方法,通过获取用户请求浏览的页面的信息,并确定页面的类型,根据页面类型选择合适的浏览器内核,用选择的浏览器内核处理用户浏览页面的请求,实现了用户在浏览页面过程中浏览器内核的自动适配功能,解决了现有技术浏览器内核无法自动适配的问题。实施例2参见图2,本实施例提供了一种浏览器内核适配的方法,包括201 :用户在移动终端上使用浏览器浏览页面,浏览器接收用户浏览页面的请求。202 :浏览器根据收到的请求向服务器发送HTTP Request请求消息,并接收服务器返回的HTTP Response响应消息。其中,所述服务器是指提供页面服务的服务器,如某个网站等。203 :浏览器判断收到的HTTP响应消息中是否包含Content-Type内容类型;如果HTTP响应消息中包含内容类型,则执行204 ;否则,执行207。所述HTTP响应消息中包括包头和包体,其中包头Header中可选地包含有Content-Type,用于标识当前请求的页面的类型,浏览器可以从该HTTP响应消息中获取到Content-Type。204 :获取HTTP响应消息中的内容类型;判断该内容类型是WML还是HTML ;如果该内容类型是WML,则执行205 ;如果该内容类型时HTML,则执行206。HTML是一种规范,也是一种标准,它通过标记符号来标记要显示的网页中的各个部分。包括文字、图片等,并且,还可以通过结合使用其他的Web技术,如脚本语言、CGI (Computer Graphics Interface,计算机图形接口)、组件等,可以创造出功能更强大的网页。浏览器内核根据标记符解释和显示其标记的内容,对于不同的浏览器内核,对同一标记符可能会有不完全相同的解释,因而可能会有不同的显示效果。WML 是一种从 HTML 继承而来,以 XML (extensible Markup Language,可扩展标记语言)为基础的标记语言,通常被用来创建可显示在WAP浏览器中的页面。WML用在规范窄频设备,因为窄频使得WML受到部分限制,如较小型的显示器、有限的使用者输入设备、窄频网络联机、有限的内存和资源等。
使用HTML语言编写的页面,可以在计算机上用IE或是Netscape等浏览器进行阅读。使用WML语言编写的页面,则是专门用来在移动终端如手机等的显示屏上显示的,用户可以在移动终端上使用浏览器来浏览WML的页面。205 :由于内容类型为WML,因此确定页面的类型为WAP类型,然后执行208。页面的类型为WAP类型是指该页面是应用了 WAP技术得到的页面。WAP为无线应用协议,是一项全球性的网络通信协议。WAP的目标是将因特网的丰富信息及先进的业务引入至IJ无线终端之中。WAP可以把目前因特网上HTML语言的信息转换成用WML语言描述的信息,并显示在移动终端的显示屏上。WAP只要求移动终端和WAP代理服务器的支持,而不要求现有的移动通信网络协议做任何的改动,因而可以广泛地应用于GSM(Global System forMobile communications,全球移动通信系统)、CDMA(Code Division Multiple Access,石马分多址)、TDMA(Time Division Multiple Access,时分多址)、3G等多种网络。支持WAP技术的移动终端能浏览由WML描述的因特网内容。206 :由于内容类型为HTML,因此确定页面的类型为WEB类型,然后执行208。WEB主要针对于计算机,它是图形化的和易于导航的,不仅可以将图形、音频、视频信息集合于一体,而且,只需要从一个连接跳到另一个连接,就可以在各页各站点之间进行浏览了。WEB类型的页面通常具有WWW形式的地址,无论系统平台是什么,都可以通过该WffW地址来访问页面。207 :由于该HTTP响应消息中不包含内容类型,因此,将页面的类型确定为未知类型,然后执行208。208 :浏览器判断确定的页面的类型是否为WAP类型,如果页面的类型是WAP类型,则执行209 ;否则,执行210。209:选择浏览器开发方提供的浏览器内核,使用所选择的浏览器内核处理上述浏览页面的请求,流程结束。在本实施例中,对于WAP类型的页面均选择浏览器开发方提供的浏览器内核,该浏览器内核具有轻便的特点,比较适合于移动终端。210:判断页面的第一片数据是否为“〈? xml”;如果第一片数据是“〈? xml”,则执行209 ;否则,执行211。当页面中的第一片数据为“〈? xml”时,表明该页面为WAP类型的页面。通常,在WAP类型的页面中首先描述版本信息和编码方式,其中的第一片数据就是“〈 xml”,对于不具有Content-Type的页面来说,可以根据该第一片数据来确定其是否为WAP类型的页面。例如,页面包括“〈?xml version = "1. O" encoding = " UTF-8" >,,,其中第一片数据为“〈? xml”,则可以确定该页面的类型为WAP类型。211 :判断浏览器所在移动终端是否为万维网WWW代理模式;如果是WWW代理模式,则执行212 ;否则,执行213。212:选择后台中转 ,使用所选择的浏览器内核处理上述浏览页面的请求,流程结束。其中,后台中转是指在通过代理服务器来从提供页面服务的服务器获取页面的相关信息。一般情况下,当用户使用浏览器直接去连接Internet站点取得网络信息时,是直接联系到目的站点服务器,然后由目的站点服务器把信息传送回来。代理服务器是介于客户端和Web服务器之间的另一台服务器,有了它之后,浏览器不是直接到Web服务器去取回网页而是向代理服务器发出请求,信号会先送到代理服务器,由代理服务器来取回浏览器所需要的信息并传送给用户的浏览器。大部分代理服务器还具有缓冲的功能,可以不断地将新取得数据储存到它本机的存储器上,如果浏览器所请求的数据在它本机的存储器上已经存在而且是最新的,那么它就不重新从Web服务器取数据,而直接将存储器上的数据传送给用户的浏览器,从而能显著地提高浏览速度和效率,节省流量。213:选择浏览器所在移动终端提供的浏览器内核,使用所选择的浏览器内核处理上述浏览页面的请求,流程结束。通常,使用移动终端提供的浏览器内核可以使浏览的页面效果更加逼真,使用户具有更好的体验。本实施例中,如果浏览器所在的移动终端存储有WAP网站白名单,则进一步地,上述方法还可以包括在浏览器接收用户浏览页面的请求之后,浏览器先判断所述请求的页面是否记录在WAP网站白名单中,如果是,则确定该页面的类型为WAP类型,然后执行208;否则,执行步骤202。其中,所述WAP网站白名单中记录有指定的页面的相关信息,这些页面均为WAP类型的页面,记录的页面相关信息包括但不限于页面的URL (Uniform Resource Locator,统一资源定位符)等,本发明对此不限定。本实施例提供的上述方法,通过获取用户请求浏览的页面的信息,并确定页面的类型,根据页面类型选择合适的浏览器内核,用选择的浏览器内核处理用户浏览页面的请求,实现了用户在浏览页面过程中浏览器内核的自动适配功能,解决了现有技术浏览器内核无法自动适配的问题。其 中,针对WAP页面类型自动使用轻便的浏览器开发方提供的内核渲染;或者,针对WWW代理模式,适配后台中转,可以节省流量;或者,适配浏览器所在的移动终端提供的浏览器内核渲染,效果更加逼真,极大地增强了用户使用浏览器的体验。实施例3参见图3,本实施例提供了一种浏览器,包括接收模块301,用于接收用户浏览页面的请求;确定模块302,用于根据该请求从服务器获取页面的信息,并根据获取的页面的信息,确定页面的类型;选择模块303,用于根据确定的页面的类型选择浏览器内核,并使用选择的浏览器内核处理该请求。参见图4,本实施例中,确定模块302可以包括请求单元302a,用于根据请求向服务器发送超文本传输协议HTTP请求消息,并接收服务器返回的HTTP响应消息;获取单元302b,用于获取HTTP响应消息中的内容类型;确定单元302c,用于判断内容类型是无线标记语言WML还是超文本标记语言HTML,如果内容类型是WML,则确定页面的类型为无线应用协议WAP类型;如果内容类型时HTML,则确定页面的类型为网络WEB类型。进一步地,获取单元302b可以具体用于判断HTTP响应消息中是否包含内容类型;如果HTTP响应消息中包含内容类型,则获取HTTP响应消息中的内容类型;如果HTTP响应消息中不包含内容类型,则确定页面的类型为未知类型。本实施例中,选择模块303可以包括第一选择单元303a,用于如果页面的类型是WAP类型,则选择浏览器开发方提供的浏览器内核;第二选择单元303b,用于如果页面的类型不是WAP类型,则选择浏览器开发方提供的浏览器内核、或浏览器所在移动终端提供的浏览器内核、或选择后台中转。进一步地,第二选择单元303b可以具体用于如果页面的类型是WEB类型,则判断页面的第一片数据是否为“〈? xml”;如果第一片数据是“〈? xml”,则选择浏览器开发方提供的浏览器内核;如果第一片数据不是“〈? xml”,则判断浏览器所在移动终端是否为万维网WWW代理模式;如果是WWW代理模式,则选择后台中转;如果不是WWW代理模式,则选择浏览器所在移动终端提供的浏览器内核。本实施例提供的上述浏览器,通过获取用户请求浏览的页面的信息,并确定页面的类型,根据页面类型选择合适的浏览器内核,用选择的浏览器内核处理用户浏览页面的请求,实现了用户在浏览页面过程中浏览器内核的自动适配功能,解决了现有技术浏览器内核无法自动适配的问题。其中,针对WAP页面类型自动使用轻便的浏览器开发方提供的内核渲染;或者,针对WWW代理模式,适配后台中转,可以节省流量;或者,适配浏览器所在的移动终端提供的浏览器内核渲染,效果更加逼真,极大地增强了用户使用浏览器的体验。本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种浏览器内核适配的方法,其特征在于,所述方法包括 浏览器接收用户浏览页面的请求; 所述浏览器根据所述请求从服务器获取所述页面的信息,并根据所述页面的信息,确定所述页面的类型; 所述浏览器根据所述页面的类型选择浏览器内核,并使用所述浏览器内核处理所述请求。
2.根据权利要求1所述的方法,其特征在于,所述浏览器根据所述请求从服务器获取所述页面的信息,并根据所述页面的信息,确定所述页面的类型,包括 所述浏览器根据所述请求向服务器发送超文本传输协议HTTP请求消息,并接收所述服务器返回的HTTP响应消息; 获取所述HTTP响应消息中的内容类型; 判断所述内容类型是无线标记语言WML还是超文本标记语言HTML ; 如果所述内容类型是WML,则确定所述页面的类型为无线应用协议WAP类型; 如果所述内容类型时HTML,则确定所述页面的类型为网络WEB类型。
3.根据权利要求2所述的方法,其特征在于,获取所述HTTP响应消息中的内容类型之前,还包括 判断所述HTTP响应消息中是否包含内容类型; 如果所述HTTP响应消息中包含内容类型,则执行获取所述HTTP响应消息中的内容类型的步骤; 如果所述HTTP响应消息中不包含内容类型,则确定所述页面的类型为未知类型。
4.根据权利要求2所述的方法,其特征在于,所述浏览器根据所述页面的类型选择浏览器内核,包括 如果所述页面的类型是WAP类型,则选择浏览器开发方提供的浏览器内核; 如果所述页面的类型不是WAP类型,则选择浏览器开发方提供的浏览器内核、或所述浏览器所在移动终端提供的浏览器内核、或选择后台中转。
5.根据权利要求4所述的方法,其特征在于,如果所述页面的类型不是WAP类型,则选择浏览器开发方提供的浏览器内核、或所述浏览器所在移动终端提供的浏览器内核、或选择后台中转,包括 如果所述页面的类型不是WAP类型,则判断所述页面的第一片数据是否为“〈 xml”; 如果所述第一片数据是“〈? xml”,则选择浏览器开发方提供的浏览器内核; 如果所述第一片数据不是“〈? xml”,则判断所述浏览器所在移动终端是否为万维网Wffff代理模式; 如果是WWW代理模式,则选择后台中转; 如果不是WWW代理模式,则选择所述浏览器所在移动终端提供的浏览器内核。
6.一种浏览器,其特征在于,所述浏览器包括 接收模块,用于接收用户浏览页面的请求; 确定模块,用于根据所述请求从服务器获取所述页面的信息,并根据所述页面的信息,确定所述页面的类型; 选择模块,用于根据所述页面的类型选择浏览器内核,并使用所述浏览器内核处理所述请求。
7.根据权利要求6所述的浏览器,其特征在于,所述确定模块包括 请求单元,用于根据所述请求向服务器发送超文本传输协议HTTP请求消息,并接收所述服务器返回的HTTP响应消息; 获取单元,用于获取所述HTTP响应消息中的内容类型; 确定单元,用于判断所述内容类型是无线标记语言WML还是超文本标记语言HTML,如果所述内容类型是WML,则确定所述页面的类型为无线应用协议WAP类型;如果所述内容类型时HTML,则确定所述页面的类型为网络WEB类型。
8.根据权利要求7所述的浏览器,其特征在于,所述获取单元用于判断所述HTTP响应消息中是否包含内容类型;如果所述HTTP响应消息中包含内容类型,则获取所述HTTP响应消息中的内容类型;如果所述HTTP响应消息中不包含内容类型,则确定所述页面的类型为未知类型。
9.根据权利要求7所述的浏览器,其特征在于,所述选择模块包括 第一选择单元,用于如果所述页面的类型是WAP类型,则选择浏览器开发方提供的浏览器内核; 第二选择单元,用于如果所述页面的类型不是WAP类型,则选择浏览器开发方提供的浏览器内核、或所述浏览器所在移动终端提供的浏览器内核、或选择后台中转。
10.根据权利要求9所述的浏览器,其特征在于,所述第二选择单元用于如果所述页面的类型是WEB类型,则判断所述页面的第一片数据是否为“〈 xml”;如果所述第一片数据是“〈 xml”,则选择浏览器开发方提供的浏览器内核;如果所述第一片数据不是“〈 xml ”,则判断所述浏览器所在移动终端是否为万维网WWW代理模式;如果是WWW代理模式,则选择后台中转;如果不是WWW代理模式,则选择所述浏览器所在移动终端提供的浏览器内核。
全文摘要
本发明公开了一种浏览器内核适配的方法和浏览器,属于计算机互联网领域。所述方法包括浏览器接收用户浏览页面的请求;所述浏览器根据所述请求从服务器获取所述页面的信息,并根据所述页面的信息,确定所述页面的类型;所述浏览器根据所述页面的类型选择浏览器内核,并使用所述浏览器内核处理所述请求。所述浏览器包括接收模块、确定模块和选择模块。本发明实现了用户在浏览页面过程中浏览器内核的自动适配功能,解决了现有技术浏览器内核无法自动适配的问题。
文档编号G06F17/30GK103067423SQ20111032037
公开日2013年4月24日 申请日期2011年10月20日 优先权日2011年10月20日
发明者何明, 陈磊, 高文君 申请人:腾讯科技(深圳)有限公司