一种网页加载方法、服务器和网页加载系统与流程

文档序号:15932183发布日期:2018-11-14 01:49阅读:178来源:国知局

本发明实施例涉及互联网领域,特别涉及网页加载加速技术。

背景技术

脚本(script)是批处理文件的延伸,是一种纯文本保存的程序,一般来说的计算机脚本程序是确定的一系列控制计算机进行运算操作动作的组合,在其中可以实现一定的逻辑分支等。一个页面中有多种元素,如html、js(即javascript的缩写)、css(cascadingstylesheet,层叠样式表单)和图片等等。以js脚本为例,js脚本在浏览器的工作方式中,默认情况下遇到一段脚本时,浏览器需要停止并等待它执行完成,然后才能完成绘制页面,这意味着,文件是一个一个加载和执行,这将影响浏览器的执行时间,当页面架构不合理,js脚本位置靠前时,js加载速度会影响到网站的整体加载效果。

当js脚本在执行时,页面的下载和渲染都必须停下来等待脚本执行完成。如果加载顺序不当,会导致阻塞大量元素请求,从而造成页面加载时间变长。对于请求加载顺序的优化,现有技术主要的方法是修改网站结构,调整加载顺序,从而提高页面展现给用户的速度。然而,发明人发现现有技术中至少存在如下问题:首先,修改网站构架的工作只能由被访问页面所述的权利人才能改变,而对于对这个网页进行访问的访问者来说,并没有权利对其进行修改。其次,网页上所具备的第三方js文件是不可控的,更加无法被修改。



技术实现要素:

本发明实施方式的目的在于提供一种网页加载方法、服务器和网页加载系统,使得在优化网页加载的过程中,无需修改源站代码,减少网站拥有者的技术开发时间的同时,优化用户体验,且便于推广。

为解决上述技术问题,本发明的实施方式提供了一种网页加载方法,应用于内容分发网络的边缘服务器,包括:在接收到来自用户终端的页面加载请求时,根据所述加载请求获得对应所述页面的加载清单,所述加载清单中包括若干个待加载项;从所述待加载项中识别出待加速资源;根据预定的优化方案改写所述加载清单中的所述待加速资源;将改写后的加载清单反馈给所述用户终端,供所述用户终端请求所述加载清单上的各加载项以进行页面加载。

本发明的实施方式还提供了一种服务器,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上述的网页加载方法。

本发明的实施方式还提供了一种页面加载系统,包括:用户终端和上述的服务器。

本发明的实施方式还提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现上述的网页加载方法。

本发明实施方式相对于现有技术而言,主要区别及其效果在于:内容分发网络的边缘服务器通过改变反馈给用户终端的加载清单,由用户终端根据改写后的加载清单请求各加载项,对加载项的加载方式进行优化,从而尽快获得可显示的加载项,如图片文字等,使页面尽快脱离白屏,让用户可以尽快看到所访问的页面,提升用户的网站访问体验。另外,由于本发明实施方式由内容分发网络实施,创新地改进了行内既定的网站优化模式,既不需要改变用户终端的配置,也不需要改变源站的代码,又不需要改变需访问页面源站的网站构架,兼容性好,可以减少网站拥有者的技术开发时间,给用户终端侧提供更优质的上网体验,便于本发明实施方式的推广。并且,本发明实施方式中的服务器可以是在cdn(contentdeliverynetwork,即内容分发网络)架构下的边缘服务器,因此云厂商可以基于网络环境、如终端加载情况,更有效地自动智能优化加载方式。

作为进一步改进,预定的优化方案可以至少包括以下之一:异步改写方案、加速改写方案和屏蔽改写方案。限定优化方案有多种可选,实现待加速资源被更好地优化。

作为进一步改进,所述根据预定的优化方案改写所述加载清单中的所述待加速资源中,所述预定的优化方案由预设策略确定;其中,所述预设策略为:若所述待加速资源为符合第一预设条件的脚本文件,则对应的优化方案为异步改写方案;若所述待加速资源属于第三方外部链接,则对应的优化方案为加速改写方案;若所述待加速资源属于预设的黑名单,则对应的优化方案为屏蔽改写方案。进一步限定存在预设策略,可见有多种优化方案可以根据需要进行单独或组合地实施,对不同的待加速资源可以根据需要配置更为合适的优化方案。

作为进一步改进,通过域名识别的方式确定所述待加速资源属于第三方外部链接。进一步限定第三方外链的识别方式,使得待加速资源的识别更为准确,确定的优化方案更为合适。

作为进一步改进,所述预设策略由客户配置。进一步限定预设策略可以由客户配置,便于用于根据实际需求调整预设策略,使得策略更符合客户的需求。

作为进一步改进,所述加载清单中包括各所述加载项的加载顺序;所述预定的优化方案改写所述加载清单中的所述待加速资源,具体包括:所述预定的优化方案为异步改写方案时,改写所述加载清单中符合第一预设条件的脚本文件的加载顺序。进一步限定在异步改写方案中,改写的是脚本文件的加载顺序,进一步加速用户浏览器侧脱离白屏状态。

作为进一步改进,所述改写加载清单中符合第一预设条件的脚本文件的加载顺序,具体为:通过修改所述符合第一预设条件的脚本文件的类型标签,改写加载清单中符合第一预设条件的脚本文件的加载顺序。进一步限定通过修改脚本文件的类型标签改写加载顺序,便于实现,简单不易出错。

作为进一步改进,所述根据所确定的优化方案改写所述加载清单的所述待加速资源,具体包括:在所述优化方案为加速改写方案时,在所述待加速资源对应的请求地址的特定位置添加标识信息;所述将改写后的加载清单反馈给所述用户终端之后,还包括:接收来自所述用户终端针对各所述加载项的加载请求,向目标站点发出所述加载请求;其中,若接收到的加载请求中包含所述标识信息,则利用优选网络节点的方式为包含所述标识信息的待加速资源发出所述加载请求。进一步限定在加速改写方案中,通过添加标识信息的方式进行改写,在后续请求该加载项时,利用优选网络节点的方式向目标站点发出所述加载请求,加快加载项的加载速度,进一步加快网页的访问速度。

作为进一步改进,所述根据所确定的优化方案改写所述加载清单的所述待加速资源,具体包括:在所述优化方案为屏蔽改写方案时,在所述待加速资源对应的请求地址的特定位置添加停止标识;所述将改写后的加载清单反馈给所述用户终端之后,还包括:接收来自所述用户终端针对各所述加载项的加载请求,向目标站点发出所述加载请求;其中,若接收到的加载请求中包含所述停止标识,则返回针对包含所述停止标识的待加速资源的停止加载指令。进一步限定在屏蔽改写方案中,对加载项添加停止标识,从而当后续请求加载该加载项时,可以直接返回停止指令,跳过该加载项的加载,避免没有必要的时间浪费,也就加快了页面的加载速度。

作为进一步改进,还包括:在所述根据加载请求获得对应所述页面的加载清单时,本地保存所述加载清单。进一步限定在请求到加载清单后,本地备份,使得后续再次请求时,可以无需再从源站获取,加快清单的请求速度,从而加快整个页面加载过程。

作为进一步改进,从待加载项中识别出待加速资源之前,还包括:判断是否采用优化服务,并在判定为是时,执行所述从待加载项中识别出待加速资源。进一步限定整个页面加载的优化过程有进入判定,只在判定为需要优化时才进入,使得本发明实施方式更符合实际情况。

附图说明

一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。

图1是根据本发明第一实施方式中的网页加载方法流程图;

图2是根据本发明第二实施方式中的网页加载方法流程图;

图3是根据本发明第三实施方式中的服务器的结构示意图;

图4是根据本发明第四实施方式中的网页加载系统的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。

本发明的第一实施方式涉及一种网页加载方法。

本实施方式可以应用于一种服务器,具体可以为cdn架构(如加速云平台)下的边缘服务器。关于现有的分布式计算机系统,是由服务提供商操作和管理的“内容传送网络”或“cdn”。服务提供商通常代表使用服务提供商基础设施的第三方(如客户)提供内容交付服务。这种类型的分布式系统通常是指由一个或多个网络链接的自主计算机集合,以及为便于各种服务而设计的软件、系统、协议和技术,诸如内容传递、web应用加速或其他支持外包的原产地基础设施。cdn服务提供商通常通过数字属性(例如网站)来提供服务交付,其在客户门户中供应,然后部署到网络。数字资产通常绑定到一个或多个边缘配置,以允许服务提供商对流量进行计费并为其客户计费。如上的覆盖网络可以与前端优化(feo)方案结合或互操作。feo是通过修改html和其上的资源来加速网页的过程。目标是消除使用覆盖的网站前端的瓶颈和低效率。在feo中,有许多特定的优化可以使用,他们的目标是做以下一项或多项:减少加载页面所需的http请求数量,而不是在一个请求中下载更多的数据;通过使用更有效的格式来减小网页及其部分的总大小,提高缓存能力并去除不必要的内容;并通过使浏览器以不同的顺序或时间加载项来加速呈现,例如防止第三方脚本延迟页面上的所有其他事件。

具体的说,在已知的覆盖网络系统中,分布式计算机系统被配置为cdn并且假定具有分布在因特网周围的一组机器1^2a-n。通常,大多数机器是位于互联网边缘附近的服务器,即位于最终用户接入网络处或邻近最终用户接入网络。网络操作命令中心(networkoperationscommandcenter,简称“nocc”)管理系统中各种机器的操作。诸如网站之类的第三方站点将分派的内容(例如,html、嵌入式页面对象、流媒体和软件下载等)卸载到分布式计算机系统,特别是“边缘”服务器。通常,内容提供商通过将给定内容提供商域或子域的别名(例如,通过dnscname)到由服务提供商的权威性域名服务管理的域来卸载其内容传送。希望内容的最终用户被引导到分布式计算机系统以更可靠和有效地获得内容。虽然没有详细示出,但是分布式计算机系统还可以包括其他基础设施,诸如从边缘服务器收集使用量和其他数据的分布式数据收集系统,在一个区域或一组区域上聚合该数据,并将该数据到其他后端系统以促进监视、记录、警报、计费、管理和其他操作和管理功能。

本实施方式中网页加载方法的流程如图1所示,具体如下:

步骤101,根据加载请求获得对应页面的加载清单。

具体的说,本步骤在接收到来自用户终端的页面加载请求时,根据加载请求获得对应页面的加载清单。更具体的说,网页加载请求可以是在用户通过浏览器进行网页加载时发出,也可以是在查看应用程序(即“app”)的某一页面时发出的。

需要说明的说,加载清单(即html文档)中包括页面的加载项和各加载项的加载顺序。同时,加载清单可能预存于服务器本地,即使网页所属服务器实际位置较远,也可以预先镜像至本地,那么在接收到网页加载请求时,就可以直接将预存的加载清单反馈至用户终端,继而由用户浏览器进行后续操作。实际应用中,需访问的页面对应的加载清单也可能并未预存于本地,那么服务器也可以向网页所属的源站请求,请求到后反馈给用户终端。另外,在获得加载清单时,增加本地保存步骤,本地保存上述加载清单。

关于边缘服务器针对来自用户终端的请求的处理,以下根据实际应用中的实现方式具体描述,覆盖网络的客户(如用户终端)被提供使用客户门户cdn边缘服务器提供指示feo应适用于客户的现场(或其一些部分)配置数据使用feo服务。然后在边缘服务器处接收到第一个用户请求(即页面的加载请求)。边缘服务器ghost(全局主机)进程应用其配置数据并确定此请求应使用feo。然后,它在feo配置缓存中查找这个数字财产的标准化信息。在一个实施例中,全局主机进程使用restful请求与feo网络通信,并且数据被交换到api(诸如google协议缓冲器)。api通过对该数字财产进行数据库查找来对归一化请求做出响应并返回该信息。对restful请求的响应被缓存。然后,在边缘服务器全局主机进程接收第二个用户请求,然后应用配置并确定这个请求应该使用feo。全球主机进程然后查找这个客户的规范化信息,这个信息现在出现了。

步骤102,判断是否采用优化服务;若是,则继续执行步骤103;若否,则执行步骤106。

具体的说,根据url判断是否采用优化服务,其中的url指的是页面加载请求中的请求地址。实际应用中,可以利用本步骤确定客户是否购买优化服务,若购买,则执行后续的优化流程,若未购买,则不执行后续的改写步骤,直接将加载清单反馈给用户终端。

步骤103,从待加载项中识别出待加速资源。

具体的说,待加速资源可以是js脚本,进一步说,可以是第三方js脚本,再进一步说,可以是外部链接。实际应用中,识别的条件可以由客户设定,在此不做限定。

更具体的说,用户终端在执行过程中,是通过<script>标签来确定是否是脚本,如js脚本,本步骤可以具体根据src标签判断是否为js脚本,是否为外部链接等。

因为js在执行的时候会影响到页面的dom和样式等情况。用户浏览器在解析渲染html的时候,如果解析到需要下载文件的script标签,那么会停止解析接下来的html,然后下载外链js文件并执行。等js执行完毕之后才会继续解析剩下的html,这就是所谓的“js阻塞”。

步骤104,根据预定的优化方案改写加载清单中的待加速资源。

具体的说,预定的优化方案至少包括以下之一:异步改写方案、加速改写方案和屏蔽改写方案。更具体的说,根据预定的优化方案改写加载清单中的待加速资源中,预定的优化方案由预设策略确定。其中,预设策略中可以指定各个待加速资源均采用某一种优化方案,也可以针对不同的待加速资源指定不同的优化方案。另外,实际应用中除了上述三种优化方案外,还可以根据需要增加其他优化方案,在此不对优化方案的数量和内容做限定。

步骤105,将改写后的加载清单反馈给用户终端。

具体的说,反馈给用户的加载清单可以供用户终端请求加载清单上的各加载项以进行页面加载,实际应用中,加载清单中携带各加载项的请求地址,所以用户终端可以直接向源站请求各加载项。更具体的说,用户终端无需获知接收到的加载清单是否被改写,仍然按照接收到的加载清单中所列的各加载项及其加载顺序进行逐个请求。之后继续执行步骤107。

步骤106,将加载清单反馈给用户终端。

具体的说,本步骤是直接将步骤101中获取到的加载清单反馈给用户终端,对加载清单并不进行改写,本步骤和步骤102结合,可以实现在无需采用优化服务时,完成加载清单的反馈。之后继续执行步骤107。

步骤107,接收来自用户终端针对各加载项的加载请求。

具体的说,用户终端在收到加载清单后,会根据加载顺序对清单中的各加载项进行逐个请求,由于加载清单中存有各加载项的请求地址,所以各加载请求中也携带请求地址。

步骤108,向目标站点发出加载请求。

具体的说,服务器向目标站点发出加载请求,其中的目标站点即待访问网页所属的源站。需要说明的是,服务器可以直接向目标站点转发接收到的加载请求,也可以利用优选网络节点的方式向目标站点发出加载请求。其中,通过监听到的ip和端口信息确定源站的ip和端口,再通过智能边路装置确定用户终端与源站之间的最优路径。

本实施方式与现有技术相比,主要区别及其效果在于:内容分发网络的边缘服务器通过改变反馈给用户终端的加载清单,由用户终端根据改写后的加载清单请求各加载项,对加载项的加载方式进行优化,从而尽快获得可显示的加载项,如图片文字等,使页面尽快脱离白屏,让用户可以尽快看到所访问的页面,提升用户的网站访问体验。另外,由于本发明实施方式由内容分发网络实施,创新地改进了行内既定的网站优化模式,既不需要改变用户终端的配置,也不需要改变源站的代码,又不需要改变需访问页面源站的网站构架,兼容性好,可以减少网站拥有者的技术开发时间,给用户终端侧提供更优质的上网体验,便于本实施方式的推广。并且,本发明实施方式中的服务器可以是在cdn(contentdeliverynetwork,即内容分发网络)架构下的边缘服务器,因此云厂商可以基于网络环境、如终端加载情况,更有效地自动智能优化加载方式。

本发明的第二实施方式涉及一种网页加载方法。第二实施方式是在第一实施方式的基础上做了进一步改进,主要改进之处在于:本发明第二实施方式中增加了预设的策略,利用预设策略为各待加速资源确定优化方案,实现对各待加速资源的自动识别,根据需要为其配置更为合适的优化方案。

本实施方式中的网页加载方法如图2所示,具体如下:

步骤201和203和第一实施方式中的步骤101和103相类似,在此不再赘述。

步骤202,判断是否采用优化服务;若是,则继续执行步骤203;若否,则执行步骤209。

具体的说,本步骤中的判断方式和第一实施方式中的步骤102相类似,在此不再赘述。

步骤204,根据预设策略确定待加速资源对应的哪种优化方案;若确定为异步改写方案,则执行步骤205;若确定为加速改写方案,则执行步骤206;若确定为屏蔽改写方案,则执行步骤207。

具体的说,本步骤中的预设策略具体包括以下三条:

(1)若待加速资源为符合第一预设条件的脚本文件,则对应的优化方案为异步改写方案;其中,第一预设条件可以是js脚本,进一步说,可以是第三方js脚本,再进一步说,可以是外部链接。

(2)若待加速资源属于第三方外部链接,则对应的优化方案为加速改写方案。具体可以通过域名识别的方式确定待加速资源属于第三方外部链接,更具体的说,所述第三方外部链接为不属于客户的链接。

(3)若待加速资源属于预设的黑名单,则对应的优化方案为屏蔽改写方案。其中,黑名单可以包括防火墙所屏蔽的加载项,由于一些国家层面的政策影响,部分加载项客观无法被加载,所以可以采用屏蔽改写方案进行优化,避免无谓的加载尝试。

值得一提的是,虽然本实施方式中的策略设定,每个待加速资源仅针对一种优化方案,但实际应用中可以设定为:如果某加速资源符合上述条件中的多个,则可以叠加多种优化方案。可见,预设策略可以由客户自行配置,在此不做限定。

步骤205,改写加载清单中符合第一预设条件的脚本文件的加载顺序。

具体的说,由于脚本文件的下载会阻碍其他加载项的下载,尤其是不可控的第三方js脚本文件,如果js脚本的位置不合理,而且脚本文件未下载完成前,将无法进行绘图显示等步骤,待访问页面将持续处于白屏状态。

本实施方式具体通过修改符合第一预设条件的脚本文件的类型标签,改写加载清单中符合预设条件的脚本文件的加载顺序。进一步说,修改类型标签可以通过插入一段脚本,而该脚本文件对应的功能可以是改写加载清单中脚本文件的类型标签。符合第一预设条件的脚本文件可以是js脚本。

需要说明的是,本申请发明人发现,脚本执行过程中,会让页面等待脚本的解析和执行,无论当前的javascript是内嵌的还是包含了外链文件,页面的下载和渲染都必须停下来等待脚本执行完成。也就是说,如果通过dom(documentobjectmodel,文档对象模型)树,动态创建script元素并插入html文档末尾,就可以改变js脚本文件被加载的次序,也就是说,在加载清单的加载顺序中,js脚本的顺序被改至最后。

还需要说明的是,上述提到的修改脚本文件的类型标签,实际应用中可以具体利用插入一段脚本文件实现,当这个脚本文件被执行时,先改写特定的script标签,那么用户终端在执行时,就会忽略该部分脚本文件,然后当其他加载项都被加载完成后,则重新执行刚才被忽略的脚本文件。

本申请发明人在实际应用中进行了效果测试,测试结果为大部分网站都有提升首屏加载时间,且首屏加速提升50%以上。

步骤206,在待加速资源对应的请求地址的特定位置添加标识信息。

具体的说,第三方外部链接是指由其他服务提供商提供的(内容开发者不可控),他们将自己的服务包装成jssdk供网页开发者使用。

从网站开发者的角度来看,第三方js相比第一方js有如下几个不同之处:

1.下载速度不可控;

2.js地址域名与网站域名不同;

3.文件内容不可控;

4.不一定有强缓存(cache-control/expires)。

如果网站上面有很多第三方js代码,那么“下载速度的不可控”很有可能导致你的网站会被拖慢。

具体的说,标识信息可以是客户的客户名或域名等信息,也可以是特定的标识号等,标识信息的内容可以根据实际需求设定,在此不做限定,特定位置在实际应用中可以是请求地址(url)的尾部。

步骤207,在待加速资源对应的请求地址的特定位置添加停止标识。

具体的说,停止标识可以是预定的标记,添加位置可以具体在请求地址(url)的尾部,实际应用中,停止标识的形式和特定位置可以根据实际需求设定,所以在此不做限定。

值得一提的是,本步骤中添加停止标识的特定位置和步骤206中添加标识信息的特定位置可以相同,也可以不相同,在此不再一一列举。

上述步骤205、步骤206和步骤207是对加载清单的具体改写方法,完成之后均继续执行步骤208。由于步骤208至210与第一实施方式中的步骤105至107相类似,在此不再一一列举。同时需指出,步骤208和209执行完成之后,均继续执行步骤210。

步骤211,向目标站点发出加载请求。

具体的说,在步骤210收到加载请求时,可能同时收到多个或一组加载请求,在发出加载请求之前,需要对其进行分析。

具体可以进行如下分析:如果存在标识信息,那么加载请求可以通过优选网络节点的方式为包含标识信息的待加速资源发出加载请求。可见,通过这种方式可以使得第三方外链得以加速。如果存在停止标识,则向用户终端返回针对包含停止标识的待加速资源的停止加载指令,避免用户终端对该资源再行加载。实际应用中,也可以直接返回“403”。也就是说,针对防火墙屏蔽的url直接返回“403”。之后,向目标站点(如源站服务器)发出各加载请求。

可见,本实施方式进一步限定存在预设策略,可见有多种优化方案可以根据需要进行单独或组合地实施,对不同的待加速资源可以根据需要配置更为合适的优化方案。同时,还可以实现对各待加速资源的自动识别,减少人力。另外,本实施方式中进一步细化了三种优化方案的实施过程,从对加载清单的不同改写方式,到后续对加载项的请求,使得本实施方式方案清楚,效果明显,简便易行,利于推广。

本发明第三实施方式涉及一种服务器,如图3所示,包括:

至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行如第一实施方式至第四实施方式中任一个网页加载方法。其中,存储器和处理器采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器和存储器的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器。

处理器负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器可以被用于存储处理器在执行操作时所使用的数据。

本发明第四实施方式涉及一种网页加载系统,如图4所示,具体包括:用户终端和如第五实施方式中提到的服务器,其中的服务器可以是cdn架构下的边缘服务器。实际应用中,本实施方式中的网页加载系统还可以包括待加载网页所属的源站服务器。

本发明第五实施方式涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。

即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1