一种发送信息的方法及装置与流程

文档序号:17356215发布日期:2019-04-09 21:42阅读:173来源:国知局
一种发送信息的方法及装置与流程

本发明涉及通信技术领域,特别是涉及一种发送信息的方法及装置。



背景技术:

为了实现利用浏览器向服务器上传文档,技术人员使用angularjs框架对浏览器进行开发,在浏览器上添加angularjs框架中的angular-upload插件,该angular-upload插件可以兼容低版本的浏览器(例如ie8等),利用该angular-upload插件将文档上传至服务器。

浏览器采用angular-upload插件向服务器上传文档时,通过angular-upload插件向服务器发送文档上传请求报文,服务器成功接收到上传的文档后,浏览器通过该angular-upload插件接收该服务器返回的上传响应报文。

由于低版本的浏览器限制跨域访问,浏览器通过angular-upload插件发送的文档上传请求报文不是正常的网络请求报文,导致浏览器通过angular-upload插件接收的上传响应报文中,响应主体的响应信息无法被正常读取。



技术实现要素:

本发明解决的技术问题在于提供一种发送信息的方法,从而能够实现从浏览器到不同源服务器的文档上传。

为此,本发明解决技术问题的技术方案是:

一种发送信息的方法,服务器与浏览器不同源,该方法包括:

服务器接收浏览器通过angular-upload插件发送的上传请求报文;

服务器根据所述上传请求报文生成上传响应报文,所述上传响应报文的响应头包括响应信息;

服务器通过所述angular-upload插件向所述浏览器返回所述上传响应报文。

可选的,服务器根据所述上传请求报文生成上传响应报文包括:

服务器将所述响应信息添加至所述响应头的accesscontrolexposeheaders字段中。

可选的,上传请求报文和所述上传响应报文中,contenttype字段的值是text/html。

可选的,响应信息是文档id,该方法还包括:

服务器获取所述上传请求报文中的文档,对所述文档进行解析,获得文档信息;

服务器生成所述文档id,存储所述文档id与所述文档信息的对应关系。

可选的,该方法还包括:

服务器接收所述浏览器发送的文档请求报文,所述文档请求报文包括所述文档id;

服务器查找所述文档id对应的所述文档信息;

服务器将所述文档信息返回至所述浏览器。

另外,本发明还提供了一种发送信息的装置,服务器与浏览器不同源,该装置包括:

第一接收模块,用于接收浏览器通过angular-upload插件发送的上传请求报文;

生成模块,用于根据所述上传请求报文生成上传响应报文,所述上传响应报文的响应头包括响应信息;

第一响应模块,用于通过所述angular-upload插件向所述浏览器返回所述上传响应报文。

可选的,生成模块包括:

添加单元,用于将所述响应信息添加至所述响应头的accesscontrolexposeheaders字段中。

可选的,第一接收模块的所述上传请求报文和所述第一响应模块的所述上传响应报文中,contenttype字段的值是text/html。

可选的,生成模块中的所述响应信息为文档id,所述装置还包括:

解析模块,用于获取所述上传请求报文中的文档,对所述文档进行解析,获得文档信息;

存储模块,用于生成所述文档id,存储所述文档id与所述文档信息的对应关系。

装置还包括:

第二接收模块,用于接收所述浏览器发送的文档请求报文,所述文档请求报文包括所述文档id;

查找模块,用于查找所述文档id对应的所述文档信息;

第二响应模块,用于将所述文档信息返回至所述浏览器。

此外,本发明还提供了一种存储介质,其上存储有程序,该程序被处理器执行时,实现所述发送信息的方法。

另外,本发明还提供了一种处理器,该处理器用于运行程序,所述程序运行时,执行所述发送信息的方法。

通过上述技术方案可知,本发明有如下有益效果:

本发明实施例提供的发送信息的方法,浏览器通过angular-upload插件发送上传请求报文给不同源的服务器,上传请求报文中携带需要上传的文档;服务器接收到上传请求报文,对应生成上传响应报文,该上传响应报文的响应头中包括响应信息;服务器继续通过angular-upload插件向浏览器返回该上传响应报文。故,本发明实施例利用angular-upload插件进行报文上传时,将响应信息携带于上传响应报文的响应头中,克服了利用angular-upload插件进行报文上传时,头部之外的报文被屏蔽,不能正常读取有效信息的问题。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例的应用场景的示意图;

图2为本发明实施例提供的一种发送信息的方法的流程图;

图3为本发明实施例提供的实际场景实施例的信令图;

图4为本发明实施例提供的一种发送信息的装置的结构示意图。

具体实施方式

随着无纸化办公的迅速发展,政府、企业以及个人的工作和学习越来越依赖电子文档。对于一部分文档(如法院的庭审数据等),由于其自身的特殊属性,需要在服务器端进行存储。具体的,由浏览器端将需要存储的文档上传至服务器端,服务器端对接收到的文档进行解析,得到文档解析后的数据和唯一标识,并将解析得到的数据存入数据库,将文档的唯一标识返回给浏览器端。

浏览器通常使用angularjs框架进行前端的开发,在这样的开发环境下,要通过浏览器向服务器上传文档,需要采用angular扩展插件实现;为了更好的达到低版本浏览器兼容的效果,一般选用angular-upload插件。

利用angular-upload插件,由浏览器向服务器上传文档后,服务器将接收到的文档进行解析,得到该文档解析后的数据和唯一标识;当用户想要从服务器上读取该文档时,需要浏览器向服务器发送上传请求报文,之后由服务器通过angular-upload插件向浏览器传输该解析后的文档信息。

一般情况下,浏览器和服务器之间传输的报文包括四个部分:请求行<request-line>、请求头部<headers>、空行<blank-line>和请求数据<request-body>,进行传输的文档信息一般携带于请求数据<request-body>。

当不使用angular-upload插件上传文档时,即,浏览器直接与服务器进行报文传输,属于正常上传方式,传输的报文携带在请求数据<request-body>部分,直接可以读取和下载;而浏览器通过angular-upload插件与服务器进行报文传输,向该服务器发送的上传请求报文不是正常的网络请求报文,此时浏览器只能读取响应的报文信息的请求头部<headers>,对于该报文信息中其他三部分内容,直接被屏蔽,即携带在请求数据<request-body>部分的报文信息(文档信息)被屏蔽。

在由浏览器通过angular-upload插件向服务器上传文档后,为了解决浏览器不能正常获取服务器返回报文中的文档信息的问题,本发明实施例提供了一种发送信息的方法和装置,以下结合说明书附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。并且在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。

为了解决上述问题,本发明实施例提供了一种发送信息的方法,该方法具体为:对于服务器与浏览器不同源的情况下,浏览器通过angular-upload插件向服务器发送上传请求报文;服务器根据接收到的上传请求报文生成上传响应报文,该上传响应报文的响应头包括响应信息;并且通过angular-upload插件返回所述上传响应报文给浏览器。通过本发明实施例的方案,将上传的响应信息携带于上传响应报文的响应头中,可以被浏览器正常获取到。

下面先对本发明的实际应用场景进行介绍。

图1为本发明在实际应用中的场景示例图,如图1所示,本发明提供的技术方案应用在浏览器101、服务器102中;其中,浏览器101用于向服务器102发送各种请求,并接收服务器102发来的超文本信息和各种多媒体数据,进行解析、显示和播放,具体有:ie,谷歌,火狐,等;服务器102是指管理资源并为用户提供服务的计算机软件,但运行文件、数据库和应用程序等软件的计算机或计算机系统也称为服务器。

在实际应用中,当某个文档需要存储时,用户需要将文档的通过浏览器101上传到服务器102时,服务器102对接收到的文档进行解析和存储;并将上传成功与否的响应信息返回给浏览器101。用户需要在浏览器101中浏览该文档时,需要发送请求给服务器102,然后服务器102根据接收到的请求,返回相应的这一文档的数据给浏览器101,浏览器101显示该接收到的文档信息。

特别地,为了保证用户的信息安全,防止恶意的网站盗取数据行为,在浏览器和服务器上引入了同源政策。具体的,两个浏览器之间、两个服务器之间或者服务器和浏览器具有相同的协议、相同的域名以及相同的端口,即为同源,上述三者只要有一个相同,即为不同源。不同源的两个浏览器之间、两个服务器之间或者服务器和浏览器不能互相打开或者访问。在本发明实施例中的浏览器101和服务器102是不同源的。

基于以上应用场景,本发明实施例提供了一种发送信息的方法,下面结合附图对该进行详细说明。

图2为本发明实施例提供的一种发送信息的方法的流程图,对于不同源的服务器和浏览器,如图2所示,该方法包括:

步骤201,服务器接收浏览器通过angular-upload插件发送的上传请求报文;

本发明的服务器和浏览器不同源,并且浏览器使用的前端开发为angularjs框架。

用户有需要通过浏览器将文档上传到服务器上进行存储时,将该文档携带于上传请求报文中,由浏览器通过angular-upload插件发送给服务器。需要说明的是,只有经过angular-upload插件,才能从浏览器上传携带文档的上传报文请求给服务器,实现文档上传。

步骤202,服务器根据上述上传请求报文生成上传响应报文,该上传响应报文的响应头包括响应信息;

上传请求报文包括需要上传的文档,在具体实现时,还可以包括上传请求的操作类型、要求返回的响应报文的内容等。

服务器根据接收到的上传请求报文,解析其中携带的文档,得到解析出文档信息,包括:文档标题、文档格式类型、文档内容及其他相关的关键字信息等,并根据解析出的文档信息生成一个对应的响应信息,该响应信息必须包含文档的上传状态信息,如果上传成功,则该响应信息包含“成功(success)”信息;如果上传失败,则该响应信息包含“失败(failure)”信息。当然,该响应信息也可以包含一个标识信息,该标识信息可以唯一标识解析后的文档信息,如文档id。

在具体实现时,服务器依据上传请求报文,需要生成一个上传响应报文,该上传响应报文携带上述响应信息,浏览器根据上传响应报文中响应信息可知,其要上传的文档是否上传成功。

利用angular-upload插件进行文件上传属于非正常上传方式,浏览器接收到的上传响应报文,只能正常读取其头部(heater)信息,其余部分均被屏蔽,不能读取。因此,响应信息包括在该上传响应报文中的响应头中,以保证上传响应报文能够在浏览器中被用户正常读取。

可选地,服务器根据上述上传请求报文生成上传响应报文包括:

服务器将响应信息添加至响应头的accesscontrolexposeheaders字段中。

具体的,上传响应报文包括四个部分:响应行<request-line>、响应头<headers>、空行<blank-line>和响应主体<request-body>,而响应头<headers>中又有很多字段,其中包括accesscontrolexposeheaders字段,将响应信息添加到accesscontrolexposeheaders字段中,即,将响应信息添加到了响应头<headers>中。进而说明,由上述四个部分组成的上传响应报文可以保证该响应信息能够在浏览器中被用户正常读取。

步骤203,服务器通过angular-upload插件向浏览器返回所述上传响应报文。

服务器通过angular-upload插件向浏览器发送上传响应报文,该上传响应报文的响应头中携带响应信息,用户根据对该上传响应报文中响应头的读取中,可知上传文件是否成功等信息。

通过上述步骤的执行,利用angular-upload插件进行报文上传时,将响应信息携带于上传响应报文的响应头中,克服了利用angular-upload插件进行报文上传时,头部之外的报文被屏蔽,不能正常读取有效信息的问题。

在具体实现时,上传响应报文中携带的响应信息,除了上传状态信息之外,还可以是其他的标识此次上传操作以及上传文档的信息。

可选地,若响应信息是文档id,该发送信息的方法还包括:

s1,服务器获取上传请求报文中的文档,对文档进行解析,获得文档信息;

s2,服务器生成文档id,并存储文档id与文档信息的对应关系。

在具体实现时,服务器在接收到上传请求报文时,相应的获得了此次的上传文档;该上传文档是用户想要进行存储的目标文件。首先,服务器根据步骤s1对该文档进行解析,得到解析出文档信息,包括:文档标题、文档格式类型、文档内容及其他相关的关键字信息等。接着,服务器根据步骤s2为接收到的该文档分配文档id,具体可以是:解析后该文档信息在服务器的地址信息、为该文档信息生成的随机号段信息等,生成的文档id和解析后的文档信息存在一一对应的映射关系。最后,服务器存储上述解析后的文档信息和文档id的对应关系,以便在后续用户想要通过浏览器读取该文档信息的时候,根据文档id以及存储的对应关系,查找对应的文档信息。

以上是对文档从浏览器上传文档到服务器的操作,在实际操作中,发送信息的方法还包括,通过浏览器对上传到服务器的文档进行读取,具体实现在下面进行介绍。

另外,服务器接收和发送的报文是json类型的数据。该json的文档类型为application/json,是格式相对复杂的数据类型,浏览器不能自动识别该种数据类型,会把返回的数据直接下载到桌面上。为了避免报文直接下载到桌面上给用户造成不便,提升用户体验。

可选地,上传请求报文和上传响应报文中,contenttype字段的值是text/html。

对于上传请求报文和上传响应报文,用户需要直接在浏览器页面上看到文档上传成功与否等信息,不想要此类报文直接被下载,造成错过接收等问题。

在具体实现时,可以将json的文档类型contenttype字段的值修改为text/html格式,以便浏览器可以识别文档类型的格式,在浏览器的页面上进行直接显示上传请求报文和上传响应报文内容。

可选地,本发明实施例提供的发送信息的方法,还包括:

步骤204,服务器接收浏览器发送的文档请求报文,文档请求报文包括文档id;

在具体实现时,浏览器发送文档请求报文给服务器,不需要再通过angular-upload插件,可以直接将文档请求报文发送给服务器。该文档请求信息包括响应信息中的文档id。

步骤205,服务器查找该文档id对应的文档信息;

在具体实现时,服务器会在自身存储的文档信息和文档id的对应关系中,根据接收到的文档id,查找该文档id对应的文档信息。查找方式可以是一一对照查找,也可以是关键字搜索查找,在这里不作限定。

步骤206,服务器将所述文档信息返回至所述浏览器。

在具体实现时,服务器响应于浏览器的文档请求报文,发送携带文档信息的文档请求响应报文给服务器,文档请求响应报文也包括报文应该包含的四个部分,由于不利用angular-upload插件传输报文,所以文档信息添加的位置为其求主体<request-body>,浏览器可以正常读取文档请求相应报文中的文档信息。并且,服务器给浏览器返回文档信息时,contenttype字段的值是text/html格式,该文档信息不会被下载到桌面上,会被浏览器直接读取,并显示在该浏览器上。

显然,本发明实施例提供的发送信息的方法,浏览器通过angular-upload插件发送上传请求报文给不同源的服务器,上传请求报文中携带需要上传的文档;服务器接收到上传请求报文,对应生成上传响应报文,该上传响应报文的响应头中包括响应信息;服务器继续通过angular-upload插件向浏览器返回在响应头中携带响应信息的上传响应报文。故,本发明实施例利用angular-upload插件进行报文上传时,将响应信息携带于上传响应报文的响应头中,克服了利用angular-upload插件进行报文上传时,头部之外的报文被屏蔽,不能正常读取有效信息的问题。

以上是对本发明的方法实施例进行的介绍,为了使本发明技术方案更加清楚和完整,下面给出本发明提供的发送信息的方法在实际应用场景中的体现,具体参见图3。

在本发明实施例的一个具体应用场景中,如图3所示,图3为本发明的场景实施例的信令图,具体包括:

s301,浏览器把欲上传至服务器的文档,生成一条包含该文档的上传请求报文;

s302,浏览器将上述上传请求报文通过angular-upload插件发送给服务器;

s303,服务器将接收到的上传请求报文中的文档进行解析,获得文档信息;并为该文档信息生成唯一对应的文档id,进而存储该文档id与文档信息的对应关系;

s304,服务器生成上传响应报文,将上述文档id作为响应信息的内容添加到上传响应报文的响应头中,具体是响应头的accesscontrolexposeheaders字段中;

s305,服务器通过angular-upload插件发送上述上传响应报文给浏览器;

s306,浏览器将接收到的上传响应报文中的json类型的文档类型(contenttype字段)的值转换为text/html格式,供用户在浏览器页面上直接查看该响应信息;

s307,浏览器生成一条包含文档id的文档请求报文;

s308,浏览器将上述文档请求报文发送给服务器;

s309,服务器根据接收的文档请求报文中的文档id,在自身存储的文档信息和文档id的对应关系中,查找该文档id对应的文档信息;

s310,服务器将查找到的文档信息返回给浏览器。

上述步骤中具体的实现方式,参见图2所示的方法实施例中的介绍,这里不再赘述。

通过上述场景实施例的描述,可以看出,本发明提供的发送信息的方法,利用angular-upload插件不同源的服务器和浏览器之间的报文传输;并且将文档上传和获取文档分为两个独立的过程。进行文档上传时,将响应信息携带于上传响应报文的响应头中,克服了利用angular-upload插件进行报文上传时,头部之外的报文被屏蔽,不能正常读取有效信息的问题;在浏览器获取文档信息时,浏览器和服务器直接进行网络通信,通过文档id获取对应的文档信息,缓解网络资源压力。

上面是对本发明的方法实施例的介绍,并且介绍了该方法实施例对应的应用场景实施例,除此之外,本发明还提供了一种发送信息的装置,下面对该装置进行介绍。

参见图4,图4为本发明实施例提供的一种发送信息的装置的结构示意图,如图4所示,该装置包括:

第一接收模块401,用于接收浏览器通过angular-upload插件发送的上传请求报文;

生成模块402,用于根据上传请求报文生成上传响应报文,其中,上传响应报文的响应头包括响应信息;

第一响应模块403,用于通过angular-upload插件向浏览器返回上传响应报文。

可选地,上述生成模块402包括:

添加单元,用于将响应信息添加至响应头的accesscontrolexposeheaders字段中。

可选地,上述第一接收模块401的上传请求报文和第一响应模块403的上传响应报文中,contenttype字段的值是text/html。

可选地,上述生成模块402中的所述响应信息为文档id,该装置还包括:

解析模块,用于获取上传请求报文中的文档,对文档进行解析,获得文档信息;

存储模块,用于生成文档id,存储文档id与文档信息的对应关系。

可选地,该装置还包括:

第二接收模块404,用于接收浏览器发送的文档请求报文,其中,文档请求报文包括文档id;

查找模块405,用于查找上述文档id对应的文档信息;

第二响应模块406,用于将文档信息返回至浏览器。

图4所示的发送信息装置的具体与图2所示的一种发送信息的方法实施例中的描述对应一致,这里不再赘述。

本发明实施例提供的发送信息的装置,利用angular-upload插件进行报文上传时,将响应信息携带于上传响应报文的响应头中,克服了利用angular-upload插件进行报文上传时,头部之外的报文被屏蔽,不能正常读取有效信息的问题。

此外,本发明还提供了一种发送信息的装置,所述发送信息的装置包括处理器和存储器,上述第一接收模块、生成模块等均作为程序模块存储在存储器中,由处理器执行存储在存储器中的上述程序模块来实现相应的功能。

处理器中包含内核,由内核去存储器中调取相应的程序模块。内核可以设置一个或以上,通过调整内核参数来克服利用angular-upload插件进行报文上传时,头部之外的报文被屏蔽,不能正常读取有效信息的问题。

存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram),存储器包括至少一个存储芯片。

本发明实施例提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制调用所述程序的设备执行所述发送信息的方法。本文中的设备可以是服务器、pc、pad、手机等。

本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行如下操作:

接收浏览器通过angular-upload插件发送的上传请求报文;

根据所述上传请求报文生成上传响应报文,所述上传响应报文的响应头包括响应信息;

通过所述angular-upload插件向所述浏览器返回所述上传响应报文。

可选的,根据所述上传请求报文生成上传响应报文包括:

将所述响应信息添加至所述响应头的accesscontrolexposeheaders字段中。

可选的,上传请求报文和所述上传响应报文中,contenttype字段的值是text/html。

可选的,响应信息是文档id,该方法还包括:

获取所述上传请求报文中的文档,对所述文档进行解析,获得文档信息;

生成所述文档id,存储所述文档id与所述文档信息的对应关系。

可选的,该方法还包括:

接收所述浏览器发送的文档请求报文,所述文档请求报文包括所述文档id;

查找所述文档id对应的所述文档信息;

将所述文档信息返回至所述浏览器。

本发明还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序代码:

接收浏览器通过angular-upload插件发送的上传请求报文;

根据所述上传请求报文生成上传响应报文,所述上传响应报文的响应头包括响应信息;

通过所述angular-upload插件向所述浏览器返回所述上传响应报文。

可选的,根据所述上传请求报文生成上传响应报文包括:

将所述响应信息添加至所述响应头的accesscontrolexposeheaders字段中。

可选的,上传请求报文和所述上传响应报文中,contenttype字段的值是text/html。

可选的,响应信息是文档id,该方法还包括:

获取所述上传请求报文中的文档,对所述文档进行解析,获得文档信息;

生成所述文档id,存储所述文档id与所述文档信息的对应关系。

可选的,该方法还包括:

接收所述浏览器发送的文档请求报文,所述文档请求报文包括所述文档id;

查找所述文档id对应的所述文档信息;

将所述文档信息返回至所述浏览器。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。

存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。存储器是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本发明的实施例可提供为方法、系统或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

以上仅为本发明的实施例而已,并不用于限制本发明。对于本领域技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。

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