页面处理方法及装置、存储介质、电子设备转让专利

申请号 : CN202210427260.1

文献号 : CN114745190B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 邱涛

申请人 : 医渡云(北京)技术有限公司

摘要 :

本公开提供一种页面处理方法、页面处理装置、存储介质与电子设备,涉及计算机技术领域。其中,所述页面处理方法包括:在目标页面载入时,若通过路由管理器的第一钩子函数确定页面路由链接地址需要加密,获取所述页面路由链接地址的加密状态;在所述第一钩子函数中,根据所述加密状态将所述页面路由链接地址中加密字段的字段参数重定向为所述加密字段对应的加密参数;若确定所述加密参数需要解密,在所述路由管理器的第二钩子函数中对所述加密参数进行解密获取解密参数,并根据所述解密参数对所述目标页面进行处理。本公开实施例中的技术方案,减少了进行加密解密操作的次数,能够提高后端服务器的处理效率。

权利要求 :

1.一种页面处理方法,应用于客户端上安装的路由管理器插件,用于通过所述路由管理器插件所提供的前端接口实现页面处理,其特征在于,包括:在目标页面载入时,若通过路由管理器的第一钩子函数确定页面路由链接地址需要加密,获取所述页面路由链接地址的加密状态;

在所述第一钩子函数中,根据所述加密状态将所述页面路由链接地址中加密字段的字段参数重定向为所述加密字段对应的加密参数,包括:若所述加密状态为已加密字段,将所述加密字段的字段参数确定为所述加密参数;若所述加密状态为非加密字段,在所述第一钩子函数中根据加密属性信息中的加密时机以及加密算法,对所述加密字段的字段参数进行加密获取所述加密参数,并将所述字段参数替换为所述加密参数;

若确定所述加密参数需要解密,在所述路由管理器的第二钩子函数中对所述加密参数进行解密获取解密参数,并根据所述解密参数对所述目标页面进行处理。

2.根据权利要求1所述的页面处理方法,其特征在于,所述通过路由管理器的第一钩子函数确定页面路由链接地址需要加密,包括:在所述第一钩子函数中,若确定所述页面路由链接地址的标识信息的返回信息为第一信息,确定所述页面路由链接地址需要加密。

3.根据权利要求1所述的页面处理方法,其特征在于,所述获取所述页面路由链接地址的加密状态,包括:若所述页面路由链接地址中存在加密字段且所述加密字段能够解密成功,确定所述页面路由链接地址为已加密字段;

若所述页面路由链接地址中不存在加密字段或加密字段无法解密成功,确定所述页面路由链接地址为非加密字段。

4.根据权利要求1所述的页面处理方法,其特征在于,所述加密时机包括加密开始时机以及加密结束时机。

5.根据权利要求1所述的页面处理方法,其特征在于,所述方法还包括:若所述目标页面为单页面,保持所述目标页面的显示信息固定不变。

6.一种页面处理装置,应用于客户端上安装的路由管理器插件,用于通过所述路由管理器插件所提供的前端接口实现页面处理,其特征在于,包括:状态确定模块,用于在目标页面载入时,若通过路由管理器的第一钩子函数确定页面路由链接地址需要加密,获取所述页面路由链接地址的加密状态;

加密模块,用于在所述第一钩子函数中,根据所述加密状态将所述页面路由链接地址中加密字段的字段参数重定向为所述加密字段对应的加密参数;

解密模块,用于若确定所述加密参数需要解密,在所述路由管理器的第二钩子函数中对所述加密参数进行解密获取解密参数,并根据所述解密参数对所述目标页面进行处理;

所述加密模块包括:第一加密模块,用于若所述加密状态为已加密字段,将所述加密字段的字段参数确定为所述加密参数;第二加密模块,用于若所述加密状态为非加密字段,在所述第一钩子函数中根据加密属性信息中的加密时机以及加密算法,对所述加密字段的字段参数进行加密获取所述加密参数,并将所述字段参数替换为所述加密参数。

7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1‑5任意一项所述的页面处理方法。

8.一种电子设备,其特征在于,包括:

处理器;以及

存储器,用于存储所述处理器的可执行指令;

其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1‑5任意一项所述的页面处理方法。

说明书 :

页面处理方法及装置、存储介质、电子设备

技术领域

[0001] 本公开涉及计算机技术领域,具体而言,涉及一种页面处理方法、页面处理装置、计算机可读存储介质以及电子设备。

背景技术

[0002] 为了保证安全性,在页面进行加载访问时需要对页面链接进行加密进而进行页面渲染。
[0003] 相关技术中,可以使用后端接口来进行加密处理。其中,只要是加密的都需要接口来进行处理,并在页面加载后将加密数据传递给接口进行解密。具体而言,在加密一次链接以及访问页面时均需要进行解密,并且在页面加载、跳转、刷新时也需要进行接口的解密,前端需要等接口的请求结果才能获取数据。
[0004] 上述方式中,在使用接口来进行加密处理时,由于对所有信息全部都需要使用后端接口来进行加密解密,灵活性较差,且增加了后端接口的处理压力,降低了处理效率,可能会影响代码原有逻辑,从而影响页面的展示。
[0005] 需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。

发明内容

[0006] 本公开提供一种页面处理方法及装置、计算机可读存储介质和电子设备,进而至少在一定程度上克服相关技术中加密效率低的问题。
[0007] 本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
[0008] 根据本公开的一个方面,提供一种页面处理方法,包括:在目标页面载入时,若通过路由管理器的第一钩子函数确定页面路由链接地址需要加密,获取所述页面路由链接地址的加密状态;在所述第一钩子函数中,根据所述加密状态将所述页面路由链接地址中加密字段的字段参数重定向为所述加密字段对应的加密参数;若确定所述加密参数需要解密,在所述路由管理器的第二钩子函数中对所述加密参数进行解密获取解密参数,并根据所述解密参数对所述目标页面进行处理。
[0009] 在本公开的一种示例性实施例中,所述通过路由管理器的第一钩子函数确定页面路由链接地址需要加密,包括:在所述第一钩子函数中,若确定所述通过页面路由链接地址的标识信息的返回信息为第一信息,确定所述页面路由链接地址需要加密。
[0010] 在本公开的一种示例性实施例中,所述获取所述页面路由链接地址的加密状态,包括:若所述页面路由链接地址中存在加密字段且所述加密字段能够解密成功,确定所述页面路由链接地址为已加密字段;若所述页面路由链接地址中不存在加密字段或加密字段无法解密成功,确定所述页面路由链接地址为非加密字段。
[0011] 在本公开的一种示例性实施例中,所述根据所述加密状态将所述页面路由链接地址中加密字段的字段参数重定向为所述加密字段对应的加密参数,包括:若所述加密状态为已加密字段,将所述加密字段的字段参数确定为所述加密参数;若所述加密状态为非加密字段,在所述第一钩子函数中按照加密属性信息对所述加密字段的字段参数进行加密得到加密参数,并将所述字段参数替换为所述加密参数。
[0012] 在本公开的一种示例性实施例中,所述在所述第一钩子函数中按照加密属性信息对所述加密字段的字段参数进行加密得到加密参数,包括:根据所述加密属性信息中的加密时机以及加密算法,对所述加密字段的字段参数进行加密获取所述加密参数。
[0013] 在本公开的一种示例性实施例中,所述加密时机包括加密开始时机以及加密结束时机。
[0014] 在本公开的一种示例性实施例中,所述方法还包括:若所述目标页面为单页面,保持所述目标页面的显示信息固定不变。
[0015] 根据本公开的一个方面,提供一种页面处理装置,包括:状态确定模块,用于在目标页面载入时,若通过路由管理器的第一钩子函数确定页面路由链接地址需要加密,获取所述页面路由链接地址的加密状态;加密模块,用于在所述第一钩子函数中,根据所述加密状态将所述页面路由链接地址中加密字段的字段参数重定向为所述加密字段对应的加密参数;解密模块,用于若确定所述加密参数需要解密,在所述路由管理器的第二钩子函数中对所述加密参数进行解密获取解密参数,并根据所述解密参数对所述目标页面进行处理。
[0016] 根据本公开的一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的页面处理方法。
[0017] 根据本公开的一个方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述的页面处理方法。
[0018] 本公开实施例中提供的页面处理方法、页面处理装置、计算机可读存储介质以及电子设备,通过路由管理器的第一钩子函数实现链接加密,并通过路由管理器的第二钩子函数进行链接解密。一方面,只需要通过第一钩子函数以及第二钩子函数进行加密解密判定以及加密链接、解密链接,无需修改代码的原有逻辑,减少了操作步骤,避免了对页面的影响。另一方面,通过路由管理器的第一钩子函数和第二钩子函数对页面路由链接地址进行加密和解密,能够通过前端实现后端服务器的功能,减少了进行加密解密操作的次数,降低了后端服务器的处理压力,进而能够提高后端服务器的处理效率。再一方面,在第一钩子函数和第二钩子函数中进行加密解密,能够避免只能对所有信息同时进行加密解密的问题,减少了加密解密的信息量,并且提高加密解密的灵活性。
[0019] 应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

[0020] 此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施方式,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0021] 图1示意性示出本公开实施例用于实现页面处理方法的系统架构图。
[0022] 图2示意性示出本公开实施例中一种页面处理方法的示意图。
[0023] 图3示意性示出本公开实施例中确定加密状态的流程示意图。
[0024] 图4示意性示出本公开实施例中确定加密参数的流程示意图。
[0025] 图5示意性示出本公开实施例中对链接地址进行处理的具体示意图。
[0026] 图6示意性示出本公开实施例中路由管理器插件的结构示意图。
[0027] 图7示意性示出本公开实施例中页面处理装置的框图。
[0028] 图8示意性示出本公开实施例中一种电子设备的框图。

具体实施方式

[0029] 现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
[0030] 此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
[0031] 本公开实施例中提供了一种页面处理方法。图1示出了可以应用本公开实施例的技术方案的示例性系统架构的示意图。
[0032] 如图1所示,系统架构100可以包括客户端101、网络102、服务器103。其中,客户端可以为智能手机、电脑、平板电脑智能音箱等智能终端,只要能够通过链接进行访问即可。网络102用以在客户端101和服务器103之间提供通信链路的介质。网络102可以包括各种连接类型,例如有线通信链路、无线通信链路等等,在本公开实施例中,客户端101和服务器
103之间的网络102可以是有线通信链路,例如可以通过串口连接线提供通信链路,也可以是无线通信链路,通过无线网络提供通信链路。服务器103可以是具有计算功能的服务器或者是客户端,例如便携式计算机、台式计算机、智能手机等具有计算功能的终端设备,用于对客户端发送的数据或链接等进行处理。
[0033] 本公开实施例中,客户端101获取页面路由链接地址,基于客户端上安装的路由管理器插件,在路由管理器的第一钩子函数中对页面路由链接地址进行加密得到加密参数,并根据加密参数重定向页面路由链接地址中加密字段的字段参数。进一步地,将重定向的页面路由链接地址发送至服务器获取页面路由链接地址对应的数据,并将数据返回至客户端。在路由管理器的第二钩子函数中将页面路由链接地址中的加密参数进行解密得到解密参数,并根据解密参数载入目标页面以及对目标页面进行渲染。
[0034] 需要说明的是,本公开实施例所提供的页面处理方法可以完全由路由管理器插件执行,由于路由管理器插件可以安装在客户端中,因此也可以认为本公开实施例所提供的页面处理方法由客户端执行。
[0035] 基于上述系统架构,本公开实施例中提供了一种页面处理方法,应用于客户端上安装的路由管理器插件,用于通过路由管理器插件所提供的前端接口实现页面处理。参考图2中所示,该页面处理方法包括步骤S210至步骤S230,详细介绍如下:
[0036] 在步骤S210中,在目标页面载入时,若通过路由管理器的第一钩子函数确定页面路由链接地址需要加密,获取所述页面路由链接地址的加密状态。
[0037] 本公开实施例中,目标页面指的是待加载的浏览器页面。路由管理器可以为各种类型的路由管理器,例如可以为vue‑router。路由管理器可应用于前端通用框架。前端通用框架可以为用于构建用户界面的渐进式框架,在路由管理器为vue‑router时,该渐进式框架可以为vue框架。本公开实施例中可以提供一个路由管理器插件,路由管理器插件可应用于所有使用vue‑router前端插件的通用场景,也就是使用了vue框架以及使用了vue‑router的路由插件且需要进行页面路由链接地址加密的场景,都可接入该路由管理器插件。页面路由链接地址指的是网站页面的路由链接地址URL(Uniform Resource Locator)。
[0038] 在路由跳转的时候,需要执行权限判断或者其他操作,因此需要使用路由管理器的钩子函数。钩子函数主要是在路由发生变化时进行特殊处理而定义的函数。路由管理器内部可以包括多个钩子函数,对于本公开实施例中的路由管理器而言,以多个钩子函数包括第一钩子函数和第二钩子函数为例进行说明。第一钩子函数可以为beforeEach函数,第二钩子函数可以为afterEach函数。第一钩子函数beforeEach可在跳转之前执行,每次每一个路由改变的时候都得执行一遍。第二钩子函数afterEach可在跳转之后执行。第一钩子函数和第二钩子函数分别在还未进入到对应页面前以及还未渲染初始化页面的时机执行加密解密处理。
[0039] 基于此,在确定第一钩子函数之后,可以在第一钩子函数中判断页面路由链接地址是否需要加密,并根据判断结果进行处理。若判断结果为页面路由链接地址需要加密,继续获取页面路由链接地址的加密状态,以执行后续操作。若判断结果为页面路由链接地址不需要加密,则结束整个流程。具体地,可以根据页面路由链接地址包含的标识信息的返回信息确定页面路由链接地址是否需要加密。标识信息可以为rule/single。返回信息指的是标识信息针对配置函数的返回值。配置函数例如可以为close函数。
[0040] 举例而言,可在第一钩子函数中通过函数close方法进行配置,若close方法中配置了如果页面路由链接地址URL中存在标识信息“rule/single”,进一步可以根据标识信息的返回信息来判断页面路由链接地址是否需要进行加密。若页面路由链接地址存在标识信息,且返回信息为第一信息,则说明页面路由链接地址需要进行加密。若页面路由链接地址存在标识信息,且返回信息为第二信息,则说明页面路由链接地址不需要进行加密。其中,第一信息可以为flase,第二信息可以为true。具体地,若if(window.location.href.includes(“rule/single”)的返回信息为flase,表示不关闭加密,即确定需要加密。若返回信息为true,则可以使用close方法关闭加密,即确定不需要加密。
[0041] 进一步地,如果确定页面路由链接地址需要加密,获取页面路由链接地址的加密状态,以确定页面路由链接地址是否能够进行加密。加密状态可以为已加密字段或非加密字段两种情况。具体可以根据页面路由链接地址中的加密字段以及加密字段的解密状态确定页面路由链接地址的加密状态。已加密字段指的是页面路由链接地址已经完成加密,非加密字段指的是页面路由链接地址尚未进行加密。解密状态用于描述加密字段是否能够解密成功,具体可以包括解密成功和解密失败。此处的解密状态可以根据对加密字段的解密结果而确定。获取该解密结果的解密方法用于判断加密字段是否能够加密成功,该解密方法可以为默认的解密方法,且可以与第二钩子函数中执行的解密方法相同或不同,此处不作限定。在此基础上,可以对页面路由链接地址中的加密字段进行一次解密,以根据解密结果判断其是否可以解密成功。如果解密结果与加密字段相同,则表示页面路由链接地址中的加密字段可以解密成功。如果解密结果与加密字段不同,则表示页面路由链接地址中的加密字段解密失败。
[0042] 图3中示意性示出了确定加密状态的流程图,参考图3中所示,确定加密状态主要包括以下步骤:
[0043] 在步骤S310中,判断页面路由链接地址中是否存在加密字段;若是,则转至步骤S320;若否,则转至步骤S340。
[0044] 在步骤S320中,判断加密字段是否能够解密成功;若是,则转至步骤S330;若否,则转至步骤S340。
[0045] 在步骤S330中,确定所述页面路由链接地址的加密状态为已加密字段。
[0046] 在步骤S340中,确定所述页面路由链接地址的加密状态为非加密字段。
[0047] 本公开实施例中,若页面路由链接地址中存在加密字段且加密字段能够解密成功,可以确定页面路由链接地址为已加密字段。即,只有同时满足存在加密字段以及能够解密成功的条件,才可以认为页面路由链接地址为已加密字段。若页面路由链接地址中不存在加密字段或加密字段解密失败,可以确定页面路由链接地址为非加密字段。即,满足页面路由链接地址中不存在加密字段,或者是页面路由链接地址中存在加密字段但是加密字段无法解密成功的任意一种条件,可以认为页面路由链接地址为非加密字段。
[0048] 接下来,继续参考图2中所示,在步骤S220中,在所述第一钩子函数中,根据所述加密状态将所述页面路由链接地址中加密字段的字段参数重定向为所述加密字段对应的加密参数。
[0049] 本公开实施例中,加密字段的字段参数指的是加密字段的当前参数,即在使用第一钩子函数中的加密算法进行加密之前的参数值。字段参数可以为已加密参数或非加密参数,且可以根据加密状态而确定。具体地,若页面路由链接地址的加密状态为已加密字段,则字段参数为已加密参数。若页面路由链接地址的加密状态为非加密字段,则字段参数为非加密参数。重定向的加密参数指的是对字段参数加密后的参数值。由于加密状态可以分为已加密字段和非加密字段,因此加密参数可以根据事先存在的已加密字段而确定,也可以根据第一钩子函数中的加密时机和加密算法组成的加密过程而确定。需要说明的是,对于非加密字段而言,可以继续进行加密;对于已加密字段而言,则不需要继续进行加密。
[0050] 图4中示意性示出了确定加密参数的流程图,参考图4中所示,主要包括以下步骤:
[0051] 在步骤S410中,若所述加密状态为已加密字段,将所述加密字段的字段参数确定为所述加密参数;
[0052] 在步骤S420中,若所述加密状态为非加密字段,在所述第一钩子函数中按照加密属性信息对所述字段参数进行加密得到加密参数,并重定向页面路由链接地址的字段参数为加密参数。
[0053] 本公开实施例中,如果加密状态为已加密字段,则无需对页面路由链接地址中的字段参数再次进行加密,因此该种情况下加密参数可以与字段参数相同,即可以保持页面路由链接地址中的字段参数不变。
[0054] 若加密状态为非加密字段,可以在第一钩子函数中获取加密属性信息,并通过加密属性信息对页面路由链接地址中加密字段的字段参数进行加密以获取对应的加密参数。加密属性信息可以为任何能够描述加密情况的信息,加密属性信息具体可以包括加密时机以及加密算法,除此之外还可以包括其他类型的信息。加密时机用于指定需要进行加密的时机,例如用于指定在哪个页面进行加密,以及何时开始加密,何时结束解密等等。加密时机包括加密开始时机以及加密结束时机。加密开始时机以及加密结束时机具体可以根据实际应用场景而进行配置。举例而言,在进入页面时即可判断是否需要对页面进行加密。例如,对于页面A和页面B,页面A可以跳转至页面B。在页面A跳转至页面B时,页面B可以根据在自身的第一钩子函数中配置的加密时机,判断页面B是否需要进行加密。需要说明的是,加密时机和加密算法均可以根据实际应用场景而配置,并存储在第一钩子函数中。实际应用场景不同,则加密时机和加密算法可以相同,也可以不同。
[0055] 加密算法可以为任意类型的加密算法,只要能够实现加密操作即可。加密算法例如可以包括但不限于对称式加密算法、非对称式加密算法、哈希算法等等。加密算法可以为第一钩子函数中的默认加密算法,也可以为根据实际应用场景而配置的自定义加密算法,此处不作具体限定。加密参数可以根据加密算法而确定,对于同一个加密字段的字段参数而言,加密算法不同,对应的加密参数也不同。举例而言,场景1的加密时机为时机1,加密算法为对称加密算法;场景2的加密时机为时机2,加密算法为非对称加密算法。
[0056] 进一步地,在根据加密算法对字段参数进行加密得到加密参数后,可以将加密参数重定向至页面路由链接地址。此处的重定向指的是通过加密字段对应的加密参数替换页面路由链接地址中的字段参数,重新生成页面路由链接地址,以刷新页面路由链接地址。
[0057] 举例而言,若目标页面进入时,页面路由链接地址为“rule/single”,其中对应的加密字段为ydEncryptKey,加密字段的字段参数例如可以为A=1等等。进一步地,如果该页面路由链接地址的加密状态为非加密字段,则可以在第一钩子函数中,使用加密属性信息对该加密字段的字段参数进行加密处理,得到加密字段对应的加密参数B。需要说明的是,加密参数可以与字段参数不同,且加密参数的具体值根据加密算法而确定。在得到加密参数B后,使用加密参数B替换页面路由链接地址中加密字段的字段参数A=1,并根据生成的加密参数对页面路由链接地址进行更新。
[0058] 具体地,若链接是“rule/single”,对应参数(加密字段)是ydEncryptKey,其后携带的参数都属于加密参数,基于此可以得到实际场景展示的URL链接,例如:
[0059] 192.168.216.36/rule/single?ydEncryptKey=eyJydWxISWQIOm51bGwsl...[0060] 需要说明的是,对于单页面来说,可保持目标页面的显示信息固定不变。单页面指的是只有一个主页面的应用,在单页面中浏览器一开始要加载所有必须的公共资源html、js、css,所有的页面内容都包含在该主页面中。单页面跳转仅刷新局部资源,公共资源仅需加载一次。单页面操作过程中不进行页面跳转,而是更改html的内容。保持目标页面的显示信息固定不变可以理解为对于用户而言目标页面不会闪烁。此处的闪烁指的是页面刷新时的显示信息,即对于用户而言看不到页面跳转。基于此,可以通过加密参数重定向页面路由链接地址的字段参数,实现目标页面的无感刷新,避免了相关技术中对前端页面显示性能的影响。
[0061] 本公开实施例中,通过加密属性信息中包含的加密时机对加密字段的字段参数进行加密,能够明确配置打开加密和关闭加密的时间,避免了相关技术中整个链接地址都需要进行加密的问题,提高了加密处理的灵活性。由于能够根据加密时机对加密过程进行限定,而不是对所有信息均进行加密,减少了加密时需要处理的数据量,提高了加密的效率和灵活性。
[0062] 继续参考图2中所示,在步骤S230中,若确定所述加密参数需要解密,在所述路由管理器的第二钩子函数中对所述加密参数进行解密获取解密参数,并根据所述解密参数对所述目标页面进行处理。
[0063] 本公开实施例中,可以在路由管理器的第二钩子函数中执行解密步骤。首先可以确定第二钩子函数的参数,此处的参数可以为跳转参数to,且跳转参数to用于表示即将跳转的路由对象。进一步地可以在第二钩子函数中判断跳转至该路由对象的加密参数是否需要解密。如果需要解密,可以在路由管理器的第二钩子函数中来对其该加密参数进行解密获取解密参数,并根据解密参数来对目标页面进行处理。解密参数可以根据解密算法而确定,解密算法可以与加密算法一一对应。需要说明的是,解密参数可以与字段参数相同。当解密参数与字段参数相同时,可以确定解密成功;当解密参数与字段参数不同时,可以确定解密失败。
[0064] 具体地,如果加密参数需要进行解密且能够解密成功,则将加密参数修改为字段参数表示的原参数,页面不需要进行修改就可以获取字段参数表示的原函数,获取字段参数可以使用原始的用于获取参数的函数this.$route.query来执行。
[0065] 需要补充的是,可以通过路由管理器插件来执行上述步骤S210至步骤S230。路由管理器插件可以安装在客户端中。在此基础上,根据路由管理器插件的配置,若检测到客户端中通过mian.js引入该路由管理器插件,可通过Vue.use()方法将该路由管理器插件注入到Vue实例中。该路由管理器插件可根据该路由管理器的第一钩子函数中配置的close函数来开启加密和关闭加密以确定加密时机,并在加密时机内根据配置的加密算法或者是默认的加密算法来对目标页面的页面路由链接地址中的字段参数进行加密,在第二钩子函数中对加密参数进行解密,进而根据解密参数渲染目标页面。需要说明的是,第二钩子函数只能在第一钩子函数之后执行。
[0066] 图5中示意性示出了对链接地址进行处理的流程图,参考图3中所示,主要包括以下步骤:
[0067] 在步骤S510中,页面进入。
[0068] 在步骤S520中,在第一钩子函数中判定页面路由链接地址是否需要加密;若是,则转至步骤S530。若否,则转至步骤S560。
[0069] 在步骤S530中,判断页面路由链接地址是否已加密。若是,则转至步骤S550。若否,则转至步骤S540。
[0070] 在步骤S540中,进行参数加密,并重新修改页面地址参数为加密参数。
[0071] 在步骤S550中,对加密参数进行解密,并复原到路由管理器的参数中。
[0072] 在步骤S560中,进行页面渲染。
[0073] 本公开实施例中,参考图6中所示,若客户端601上安装的路由管理器插件602在路由管理器的第一钩子函数603中确定页面路由链接地址需要加密,获取所述页面路由链接地址的加密状态;在所述第一钩子函数中,如果加密状态为非加密字段,按照加密属性信息对加密字段604的字段参数进行加密得到加密参数605,并将所述页面路由链接地址中加密字段的字段参数重定向为所述加密字段对应的加密参数;若确定所述加密参数需要解密,在所述路由管理器的第二钩子函数606中,对所述加密参数进行解密获取解密参数,解密参数与加密字段相同,并根据所述解密参数对所述目标页面进行处理。
[0074] 举例而言,假如有一串浏览器地址栏链接,该链接可以表示为:http://localhost:8080/list?page=5&username=张三&idno=11112222,其中链接地址上的三个参数分别为page、username及idno。相关技术中,如果使用加密就需要后端接口进行处理加密,然后页面加载后把加密数据传递给接口进行解密。基于本公开实施例中的路由管理器插件,则可以只通过前端进行加密,而不需要接口来实现。
[0075] 本公开实施例中的技术方案,在使用了Vue前端框架及路由管理器vue‑router的基础上进行运用,通过提供路由管理器插件使用前端而不用接口参与加密解密实现,从而进行浏览器页面地址的参数加密、解密,使用时浏览器地址栏的链接地址URL参数为一串加密参数,可自由配置加密解密方法来限制使用者不可随意更改及查看地址栏中的敏感参数,保证敏感参数的安全性。其中,由于只需要前端插件不需要使用服务器接口来进行加密处理,避免了相关技术中任何操作均需要进行解密的操作,减少了解密次数,降低了服务器的计算压力,不需要前端开发服务器后端也进行开发,因此降低了成本。由于可以通过第一钩子函数中的加密开始时机以及加密结束时机来控制加密过程,能够对需要的页面进行加密,避免了整个站点的链接地址都需要进行加密以及对所有信息均进行同样级别的加密的过程,提高了加密处理的灵活性和针对性,提高了开放性。进一步地,对于用户而言,只要进行参数判定以及加解密判定的配置,对页面没有其他影响,实现了前端加密无成本配置,不会影响原有代码逻辑,提高了稳定性和可靠性。
[0076] 本公开实施例中,还提供了一种页面处理装置,参考图7中所示,该页面处理装置700主要包括以下模块:
[0077] 状态确定模块701,用于在目标页面载入时,若通过路由管理器的第一钩子函数确定页面路由链接地址需要加密,获取所述页面路由链接地址的加密状态;
[0078] 加密模块702,用于在所述第一钩子函数中,根据所述加密状态将所述页面路由链接地址中加密字段的字段参数重定向为所述加密字段对应的加密参数;
[0079] 解密模块703,用于若确定所述加密参数需要解密,在所述路由管理器的第二钩子函数中对所述加密参数进行解密获取解密参数,并根据所述解密参数对所述目标页面进行处理。
[0080] 在本公开的一种示例性实施例中,加密模块包括:加密判断模块,用于在所述第一钩子函数中,若确定所述页面路由链接地址的标识信息的返回信息为第一信息,确定所述页面路由链接地址需要加密。
[0081] 在本公开的一种示例性实施例中,状态确定模块包括:第一确定模块,用于若所述页面路由链接地址中存在加密字段且所述加密字段能够解密成功,确定所述页面路由链接地址为已加密字段;第二确定模块,用于若所述页面路由链接地址中不存在加密字段或加密字段无法解密成功,确定所述页面路由链接地址为非加密字段。
[0082] 在本公开的一种示例性实施例中,加密模块包括:第一加密模块,用于若所述加密状态为已加密字段,将所述加密字段的字段参数确定为所述加密参数;第二加密模块,用于若所述加密状态为非加密字段,在所述第一钩子函数中按照加密属性信息对所述加密字段的字段参数进行加密得到加密参数,并将所述字段参数替换为所述加密参数。
[0083] 在本公开的一种示例性实施例中,第二加密模块包括:加密控制模块,用于根据所述加密属性信息中的加密时机以及加密算法,对所述加密字段的字段参数进行加密获取所述加密参数。
[0084] 在本公开的一种示例性实施例中,所述加密时机包括加密开始时机以及加密结束时机。
[0085] 在本公开的一种示例性实施例中,所述装置还包括:显示信息控制模块,用于若所述目标页面为单页面,保持所述目标页面的显示信息固定不变。
[0086] 此外,上述页面处理装置中各部分的具体细节在页面处理方法部分实施方式中已经详细说明,未披露的细节内容可以参见方法部分的实施方式内容,因而不再赘述。
[0087] 应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
[0088] 此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
[0089] 在本公开的实施例中,还提供了一种能够实现上述方法的电子设备。
[0090] 所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
[0091] 下面参照图8来描述根据本公开的这种实施方式的电子设备800。图8显示的电子设备800仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
[0092] 如图8所示,电子设备800以通用计算设备的形式表现。电子设备800的组件可以包括但不限于:上述至少一个处理单元810、上述至少一个存储单元820、连接不同系统组件(包括存储单元820和处理单元810)的总线830以及显示单元840。
[0093] 其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元810执行,使得所述处理单元810执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。例如,所述处理单元810可以执行如图2中所示的步骤。
[0094] 存储单元820可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)8201和/或高速缓存存储单元8202,还可以进一步包括只读存储单元(ROM)8203。
[0095] 存储单元820还可以包括具有一组(至少一个)程序模块8205的程序/实用工具8204,这样的程序模块8205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
[0096] 总线830可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速接口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
[0097] 电子设备800也可以与一个或多个外部设备900(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备800交互的设备通信,和/或与使得该电子设备800能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口850进行。并且,电子设备800还可以通过网络适配器860与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器860通过总线830与电子设备800的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备800使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
[0098] 在本公开的实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。
[0099] 根据本公开的实施方式的用于实现上述方法的程序产品,其可以采用便携式紧凑盘只读存储器(CD‑ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0100] 所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD‑ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0101] 计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0102] 可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
[0103] 可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0104] 此外,上述附图仅是根据本公开实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
[0105] 本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
[0106] 应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。