用户权限的动态配置方法、网关及系统
技术领域
本发明涉及用户权限管理、开发及应用领域,尤其涉及用户权限的动态配置方法、网关及系统。
背景技术
在现有的应用平台使用过程中,用户通过用户名和密码后,经过鉴权校验获取当前用户的权限关系,根据不同权限执行相应权限配置的功能。现有的用户权限关系的角色-菜单-功能都是配置好的,给用户分配的角色决定用户的可操作功能有哪些,用户角色是静态的,不能进行动态配置。
因此,现有绝大多数平台的用户权限系统角色是设计时就已固化,给用户设置角色时只能从有限的角色选择分配,不支持动态角色分配不同菜单功能;api接口访问权限对应菜单需要多次重复配置,如果某个url未配置,该模块将不能显示正常;菜单信息是通过js配置信息维护,增一个菜单即需要修改代码,极大降低开发效率。因此,权限关系的角色-菜单-api都是程序静态写入,不能满足客户不同场景给予角色赋予不同权限功能,这样就导致了一个平台很难满足定制化角色和定制化菜单权限,只能在有限的角色获取功能权限集合。
发明人在实现本申请的过程中发现,目前现有的平台不能满足定制化角色和定制化菜单,原因有以下几个方面,首先,不同平台的业务开发流程千差万别,能支撑的权限关系功能也有很大差异。其次,其他平台的组织关系化分不会很细致,比如:游客->注册未激活用户->个人开发者->团队开发者->团队项目组开发者->组成员分配自定义角色,在用户不同身份时对应不同功能权限,权限支持动态配置,这些不同组织关系对于开发的成本会比较高。此外,用户支持加入公司的不同项目组中,在各项目组中会担任不同的角色,切换项目组会有不同的操作权限功能,因此不同组织切换或团队级别可操作的权限等想要很完美的融合到平台是一个很大的挑战。
由此可知,现有的用户权限多为静态分配方式,当新用户加入,或是团队人员变动时,将要重新对用户权限进行配置。不仅操作繁琐,同时不利于对用户权限的统一管理,增加了系统的操作。并且不利于用户的实施操作,降低了系统的可用性。
发明内容
本发明实施例提供一种用户权限的动态配置方法、网关及系统,用于至少解决上述技术问题之一。
第一方面,本发明实施例提供一种用户权限的动态配置方法,
本发明首先平台支持菜单(功能)动态配置,通过给菜单指定code,此code会与api做关联。在不同项目中,管理员或超管可以分配自定义角色,配置该角色能够访问的菜单功能,用户加入项目组后默认给予成员角色,也可动态分配自定义角色,这样就可以支持用户在各个项目组中拥有管理员或超管配置的自定义角色。同时DUI平台用户权限支持角色组成关系,不同角色不用重复配置菜单-api关系,造成冗余数据关系,DUI平台用户权限将用户登陆后的都共有的权限配置为“系统公共权限”,加入团队后共有的权限配置为“团队公共权限”,项目组自定义角色权限拥有“游客权限+系统公共权限+团队公共权限”的角色组合,因此在功能配置时对于公共部分的菜单配置极大减少了配置和代码功能量。
具体包括:
步骤S101,接收当前用户登录信息中的用户身份标识信息及应用组信息;
步骤S102,根据所述用户身份标识信息及应用组信息,匹配预存的用户身份、应用组与API应用程序接口的对应信息,提取当前用户的API应用程序接口列表;
步骤S103,判断当前用户请求的API应用程序接口信息是否在所述当前用户的API应用程序接口列表中,若在,则通过当前用户请求的API访问权限,若否,则不通过当前用户请求的API访问权限。
基于所述步骤S101前还包括:
步骤S100,若当前用户登录信息不存在,则根据用户请求信息新建当前用户的用户身份标识信息及应用组信息。
基于所述当前用户登录信息中的用户身份标识信息为userId字段信息;所述应用组信息为:groupId字段信息。
基于所述步骤S102中包括:
判断所述用户身份标识信息是否存在于所述用户身份、应用组与API应用程序接口的对应信息中,若用户身份标识信息存在,则判断所述应用组信息是否存在,若所述应用组信息存在,则根据所述用户身份与应用组信息从所述用户身份、应用组与API应用程序接口的对应信息中包括的企业开发者对应的API应用程序接口确定当前用户的API应用程序接口列表;若所述应用组信息不存在,则则根据所述用户身份与应用组信息从所述用户身份、应用组与API应用程序接口的对应信息中包括的个人开发者对应的API应用程序接口确定当前用户的API应用程序接口列表;
判断所述用户身份标识信息是否存在于所述用户身份、应用组与API应用程序接口的对应信息中,若用户身份标识信息不存在,则根据所述用户身份、应用组与API应用程序接口的对应信息中包括的通用开发者对应的API应用程序接口确定当前用户的API应用程序接口列表。
基于步骤S103中还包括:
步骤S1031接收当前用户请求的API应用程序接口信息。
基于步骤S103中还包括:
若通过当前用户请求的API访问权限,则向当前用户发送请求通过信息;
若不通过当前用户请求的API访问权限,则向当前用户发送未请求通过信息。
第二方面,本发明实施例提供用户权限的动态配置网关,
其中,所述网关配置为:
接收当前用户登录信息中的用户身份标识信息及应用组信息;
根据所述用户身份标识信息及应用组信息,匹配预存的用户身份、应用组与API应用程序接口的对应信息,提取当前用户的API应用程序接口列表;
判断当前用户请求的API应用程序接口信息是否在所述当前用户的API应用程序接口列表中,若在,则通过当前用户请求的API访问权限,若否,则不通过当前用户请求的API访问权限。
基于所述的网关,其中,网关还配置为
判断所述用户身份标识信息是否存在于所述用户身份、应用组与API应用程序接口的对应信息中,若用户身份标识信息存在,则判断所述应用组信息是否存在,若所述应用组信息存在,则根据所述用户身份与应用组信息从所述用户身份、应用组与API应用程序接口的对应信息中包括的企业开发者对应的API应用程序接口确定当前用户的API应用程序接口列表;若所述应用组信息不存在,则根据所述用户身份与应用组信息从所述用户身份、应用组与API应用程序接口的对应信息中包括的个人开发者对应的API应用程序接口确定当前用户的API应用程序接口列表;
判断所述用户身份标识信息是否存在于所述用户身份、应用组与API应用程序接口的对应信息中,若用户身份标识信息不存在,则根据所述用户身份、应用组与API应用程序接口的对应信息中包括的通用开发者对应的API应用程序接口确定当前用户的API应用程序接口列表。
第三方面,本发明实施例提供用户权限的动态配置系统,其中,包括:接收单元、API应用程序接口列表提取单元及权限判断单元;
所述接收单元配置为,接收当前用户登录信息中的用户身份标识信息及应用组信息;
所述API应用程序接口列表提取单元配置为,根据所述接收单元获取的所述用户身份标识信息及应用组信息,匹配预存的用户身份、应用组与API应用程序接口的对应信息,提取当前用户的API应用程序接口列表;
所述判断单元配置为,判断当前用户请求的API应用程序接口信息是否在所述API应用程序接口列表提取单元获取的所述当前用户的API应用程序接口列表中,若在,则通过当前用户请求的API访问权限,若否,则不通过当前用户请求的API访问权限。
基于所述API应用程序接口列表提取单元还配置为:
判断所述用户身份标识信息是否存在于所述用户身份、应用组与API应用程序接口的对应信息中,若用户身份标识信息存在,则判断所述应用组信息是否存在,若所述应用组信息存在,则根据所述用户身份与应用组信息从所述用户身份、应用组与API应用程序接口的对应信息中包括的企业开发者对应的API应用程序接口确定当前用户的API应用程序接口列表;若所述应用组信息不存在,则根据所述用户身份与应用组信息从所述用户身份、应用组与API应用程序接口的对应信息中包括的个人开发者对应的API应用程序接口确定当前用户的API应用程序接口列表;
判断所述用户身份标识信息是否存在于所述用户身份、应用组与API应用程序接口的对应信息中,若用户身份标识信息不存在,则根据所述用户身份、应用组与API应用程序接口的对应信息中包括的通用开发者对应的API应用程序接口确定当前用户的API应用程序接口列表。
第四方面,提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例的方法的步骤。
第五方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行本发明任一实施例的方法的步骤。
本申请通过可以让开发者将其他平台开发的技能快速的使用到DUI平台的产品中,这样极大地丰富了DUI能够提供的技能种类,同时开发者也有更加灵活的选择和组合方式。通过本申请上线一个新业务时,只需要业务开发人通过python脚本配置好菜单和权限关系,用户在权限平台只需勾选新业务,就有权限访问新业务功能。如果用户已添加过该业务菜单,那么新加的需求访问权限会自动赋予该用户角色,用户也可以访问新业务功能。进而,本申请通过网关预存的用户与API的对应关系,实现“用户”的权限进行动态分配,在提高用户管理灵活性的同时,降低了系统数据的整体变动频次,提高了系统的稳定性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提供的用户权限的动态配置方法的流程图;
图2为本发明另一实施例提供的用户权限的动态配置方法的流程图;
图3为本发明一实施例提供的用户权限的动态配置系统的组成图;
图4为本发明一实施例提供的api访问权限服务端的处理流程;
图5为本发明一实施例提供的权限系统角色组成关系图;
图6为本发明一实施例提供的一种用户权限的动态配置装置的框图;
图7是本发明一实施例提供的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面,先介绍本申请的实施方式,之后将用本申请的方案与现有技术相比有什么不同,能实现什么有益效果。
本发明中所出现的英文缩写的英文全称及中文定义。
userId:用户编号。groupKey:通过base64加密后的密文。groupId:组编号。
请参考图1,其示出了本申请的用户权限的动态配置方法的流程图。包括:
步骤S101,接收当前用户信息。
本步骤中,接收当前用户登录信息中的用户身份标识信息及应用组信息。当前用户登录信息中的用户身份标识信息为userId字段信息;应用组信息为:groupId字段信息。
步骤S102,提取当前用户的API应用程序接口列表。
本步骤中,根据用户身份标识信息及应用组信息,匹配预存的用户身份、应用组与API应用程序接口的对应信息,提取当前用户的API应用程序接口列表。其中,步骤S102中包括:
判断用户身份标识信息是否存在于用户身份、应用组与API应用程序接口的对应信息中,若用户身份标识信息存在,则判断应用组信息是否存在,若应用组信息存在,则根据用户身份与应用组信息从用户身份、应用组与API应用程序接口的对应信息中包括的企业开发者对应的API应用程序接口确定当前用户的API应用程序接口列表;若应用组信息不存在,则根据用户身份与应用组信息从用户身份、应用组与API应用程序接口的对应信息中包括的个人开发者对应的API应用程序接口确定当前用户的API应用程序接口列表;
判断用户身份标识信息是否存在于用户身份、应用组与API应用程序接口的对应信息中,若用户身份标识信息不存在,则根据用户身份、应用组与API应用程序接口的对应信息中包括的通用开发者对应的API应用程序接口确定当前用户的API应用程序接口列表。
步骤S103,权限验证。
本步骤中,判断当前用户请求的API应用程序接口信息是否在当前用户的API应用程序接口列表中,若在,则通过当前用户请求的API访问权限,若否,则不通过当前用户请求的API访问权限。
在本步骤中,还包括步骤S1031接收当前用户请求的API应用程序接口信息。
其中,步骤S103中还包括:若通过当前用户请求的API访问权限,则向当前用户发送请求通过信息;若不通过当前用户请求的API访问权限,则向当前用户发送未请求通过信息。
在一种优选的实施方式中,参考图2,其示出了为本发明另一实施例提供的用户权限的动态配置方法的流程图。其中在步骤S101前还包括:
步骤S100,新建用户信息。
本步骤中,若当前用户登录信息不存在,则根据用户请求信息新建当前用户的用户身份标识信息及应用组信息。
同时,本发明还提供了一种用户权限的动态配置网关,其中,网关配置为:
接收当前用户登录信息中的用户身份标识信息及应用组信息;
根据用户身份标识信息及应用组信息,匹配预存的用户身份、应用组与API应用程序接口的对应信息,提取当前用户的API应用程序接口列表;
判断当前用户请求的API应用程序接口信息是否在当前用户的API应用程序接口列表中,若在,则通过当前用户请求的API访问权限,若否,则不通过当前用户请求的API访问权限。
在一种优选的实施方式中,网关还配置为
判断用户身份标识信息是否存在于用户身份、应用组与API应用程序接口的对应信息中,若用户身份标识信息存在,则判断应用组信息是否存在,若应用组信息存在,则根据用户身份与应用组信息从用户身份、应用组与API应用程序接口的对应信息中包括的企业开发者对应的API应用程序接口确定当前用户的API应用程序接口列表;若应用组信息不存在,则根据用户身份与应用组信息从用户身份、应用组与API应用程序接口的对应信息中包括的个人开发者对应的API应用程序接口确定当前用户的API应用程序接口列表。
判断用户身份标识信息是否存在于用户身份、应用组与API应用程序接口的对应信息中,若用户身份标识信息不存在,则根据用户身份、应用组与API应用程序接口的对应信息中包括的通用开发者对应的API应用程序接口确定当前用户的API应用程序接口列表。
同时,如图3所示,本发明还提供了一种用户权限的动态配置系统,其中,包括:接收单元101、API应用程序接口列表提取单元102及权限判断单元103。
接收单元101配置为,接收当前用户登录信息中的用户身份标识信息及应用组信息;
API应用程序接口列表提取单元102配置为,根据接收单元获取的用户身份标识信息及应用组信息,匹配预存的用户身份、应用组与API应用程序接口的对应信息,提取当前用户的API应用程序接口列表。
权限判断单元103配置为,判断当前用户请求的API应用程序接口信息是否在API应用程序接口列表提取单元获取的当前用户的API应用程序接口列表中,若在,则通过当前用户请求的API访问权限,若否,则不通过当前用户请求的API访问权限。
优选地,其中:API应用程序接口列表提取单元还配置为:
判断用户身份标识信息是否存在于用户身份、应用组与API应用程序接口的对应信息中,若用户身份标识信息存在,则判断应用组信息是否存在,若应用组信息存在,则根据用户身份与应用组信息从用户身份、应用组与API应用程序接口的对应信息中包括的企业开发者对应的API应用程序接口确定当前用户的API应用程序接口列表;若应用组信息不存在,则则根据用户身份与应用组信息从用户身份、应用组与API应用程序接口的对应信息中包括的个人开发者对应的API应用程序接口确定当前用户的API应用程序接口列表;
判断用户身份标识信息是否存在于用户身份、应用组与API应用程序接口的对应信息中,若用户身份标识信息不存在,则根据用户身份、应用组与API应用程序接口的对应信息中包括的通用开发者对应的API应用程序接口确定当前用户的API应用程序接口列表。
在本发明的一种实施方式正,用户首先以游客角色访问DUI平台,通过注册用户名和密码成功后成为未激活角色,用户选择加入某个团队的项目组,管理员给该成员分配自定义角色,设置完成后用户就可以访问分配此角色的菜单,未分配的菜单和api没有权限访问,保证数据的可靠性和准确性。
在用户登陆DUI平台时,api访问权限服务端的处理流程图见图4。
步骤1:用户输入用户名和密码登陆DUI平台,如果登陆成功后经过网关授权获取Token。用户访问DUI业务时,网关解析Token和Base64加密的groupKey获取userId、groupId。网关根据userId和groupId值到下层业务权限服务获取可操作的api。
步骤2:业务权限服务根据userId和groupId查找数据库数据是否存在,一共有三种情况,权限系统角色组成关系图见图5。
a.userId和groupId都不存在,返回不用登陆的api列表。
b.只有入参userId。
1、userId为个人开发者:公共角色+个人开发者私有角色+不用登陆的api
2、userId为企业开发者:公共角色+企业公共角色+不用登陆的api
3、userId为企业超级管理员:公共角色+企业公共角色+企业所有组角色+不用登陆的api+超级管理员角色
4、userId为普通用户:公共角色+普通用户角色+不用登陆的api
c.userId和groupId都存在:
1、userId为企业成员:公共角色+企业公共角色+组角色+不用登陆的api
2、userId为企业超级管理员
2.1超级管理员在该组内:公共角色+企业公共角色+组角色+不用登陆的api+超级管理员角色
2.2超级管理员不在该组内:公共角色+企业公共角色+企业所有组角色+不用登陆的api+超级管理员角色
步骤3:网关判断用户访问的api是否在权限服务返回的可访问api里存在,存在即有访问权限,从最外层保证数据的可靠性。
在权限设计初期,原先是没有角色组成关系,用户给角色分配菜单,菜单与api关联,这样的好处是自定义角色能够分配自己想要的业务功能,但是缺点也很明显:
1.一个权限对应多个url,一个url被多个权限使用,配置url重复、过多。
2.不知道模块该配置哪些url,要清楚的知道需要配哪些接口。
3.权限模块对应的细节url过多,如果某个url未配置,该模块不能显示正常。
4.维护成本过高:各个服务模块开发,都要找开发配置这个权限可以开放的接口
衡量了实际情况后,将公共业务能够访问的放在“系统公共角色”,加入团队后能够访问的放在“企业公共角色”,这样api和菜单不需要重复配置,维护成本也低。
请参考图6,其示出了本发明一实施例提供的一种用户权限的动态配置装置,其中,包括:接收单元101、API应用程序接口列表提取单元102及权限判断单元103。
接收单元101配置为,接收当前用户登录信息中的用户身份标识信息及应用组信息;
API应用程序接口列表提取单元102配置为,根据接收单元获取的用户身份标识信息及应用组信息,匹配预存的用户身份、应用组与API应用程序接口的对应信息,提取当前用户的API应用程序接口列表。
判断单元103配置为,判断当前用户请求的API应用程序接口信息是否在API应用程序接口列表提取单元获取的当前用户的API应用程序接口列表中,若在,则通过当前用户请求的API访问权限,若否,则不通过当前用户请求的API访问权限。
优选地,其中:API应用程序接口列表提取单元还配置为:
判断用户身份标识信息是否存在于用户身份、应用组与API应用程序接口的对应信息中,若用户身份标识信息存在,则判断应用组信息是否存在,若应用组信息存在,则根据用户身份与应用组信息从用户身份、应用组与API应用程序接口的对应信息中包括的企业开发者对应的API应用程序接口确定当前用户的API应用程序接口列表;若应用组信息不存在,则则根据用户身份与应用组信息从用户身份、应用组与API应用程序接口的对应信息中包括的个人开发者对应的API应用程序接口确定当前用户的API应用程序接口列表;
判断用户身份标识信息是否存在于用户身份、应用组与API应用程序接口的对应信息中,若用户身份标识信息不存在,则根据用户身份、应用组与API应用程序接口的对应信息中包括的通用开发者对应的API应用程序接口确定当前用户的API应用程序接口列表。
在另一些实施例中,本发明实施例还提供了一种非易失性计算机存储介质,计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的语音信号处理和使用方法;
作为一种实施方式,本发明的非易失性计算机存储介质存储有计算机可执行指令,计算机可执行指令设置为:
获取并分离出与原始输入语音信号对应的多个源信号;
对某一源信号进行预设处理区分出所述某一源信号中的至少一个第一语音信号和至少一个第一噪音信号;
将所述第一语音信号输入至唤醒引擎中,并获取所述唤醒引擎输出的所述第一语音信号的置信度,其中,所述唤醒引擎能够被置信度大于或等于阈值的唤醒词唤醒;
基于所述第一语音信号中置信度最大的信号,所述第一语音信号中未唤醒的信号和所述至少一个第一噪音信号中能量最大的信号,计算所述置信度最大的信号和所述能量最大的信号信噪比;
基于与所述至少一个第一语音信号对应的至少一个信噪比计算与所述某一源信号中的语音存在概率;
基于与各源信号对应的语音存在概率对所述各源信号进行加权并利用加权后的所述各源信号计算所述原始输入信号的波达方向。
作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的语音信号处理方法对应的程序指令/模块。一个或者多个程序指令存储在非易失性计算机可读存储介质中,当被处理器执行时,执行上述任意方法实施例中的语音信号处理方法。
非易失性计算机可读存储介质可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据语音信号处理装置的使用所创建的数据等。此外,非易失性计算机可读存储介质可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,非易失性计算机可读存储介质可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至语音信号处理装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本发明实施例还提供一种计算机程序产品,计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被计算机执行时,使计算机执行上述任一项语音信号处理方法。
图7是本发明实施例提供的电子设备的结构示意图,如图7所示,该设备包括:一个或多个处理器710以及存储器720,图7中以一个处理器710为例。语音信号处理方法的设备还可以包括:输入装置730和输出装置740。处理器710、存储器720、输入装置730和输出装置740可以通过总线或者其他方式连接,图7中以通过总线连接为例。存储器720为上述的非易失性计算机可读存储介质。处理器710通过运行存储在存储器720中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例语音信号处理方法。输入装置730可接收输入的数字或字符信息,以及产生与信息投放装置的用户设置以及功能控制有关的键信号输入。输出装置740可包括显示屏等显示设备。
上述产品可执行本发明实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例所提供的方法。
本申请实施例的电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其他具有数据交互功能的电子装置。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。