本发明涉及路由挂载技术领域,尤其是涉及一种动态挂载网页路由的方法及装置。
背景技术:
在现有的用户进入不同的系统网页的方案中,大部分通过网页路由交由服务器端实现或通过网页路由在网页应用浏览器端实现。但是,上述两种方案分别存在频繁的消耗大量的http或https请求,造成页面等待,影响用户体验以及容易造成系统数据泄露的问题。
技术实现要素:
有鉴于此,本发明的目的在于提供一种动态挂载网页路由的方法及装置,以改善容易造成系统数据泄露的技术问题。
第一方面,本发明实施例提供了一种动态挂载网页路由的方法,所述方法包括以下步骤:
通过单页面脚手架生成单页面项目源码;
在所述单页面项目源码的接口请求文件中通过http请求定义第一菜单权限数据,并在所述单页面项目源码的路由文件中定义第二菜单权限数据;
判断所述第一菜单权限数据和所述第二菜单权限数据是否匹配;
如果是,则生成菜单页面并动态挂载网页路由。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所述在所述单页面项目源码的接口请求文件中通过http请求定义第一菜单权限数据的步骤,包括:
新建单页面项目源码的接口请求文件;
在所述接口请求文件中,通过http请求结合封装函数,从服务器定义并获取当前登录用户所拥有的第一菜单权限数据。
结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,所述在所述单页面项目源码的路由文件中定义第二菜单权限数据的步骤,包括:
新建单页面项目源码的路由文件;
在所述路由文件中写入第二菜单权限数据。
结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,所述判断所述第一菜单权限数据和所述第二菜单权限数据是否匹配的步骤,包括:
封装权限过滤函数,对所述第一菜单权限数据和所述第二菜单权限数据进行匹配;
判断所述第一菜单权限数据的菜单权限码和所述第二菜单权限数据的菜单权限码是否相等;
如果是,则确定所述第一菜单权限数据和所述第二菜单权限数据匹配。
结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,所述生成菜单页面并动态挂载网页路由的步骤,包括:
通过单页面脚手架打包菜单对应的网页应用,生成所述菜单对应的菜单页面;
利用vue-router框架中的addroutes函数动态挂载网页路由。
第二方面,本发明实施例还提供一种动态挂载网页路由的装置,所述装置包括:
源码生成模块,用于通过单页面脚手架生成单页面项目源码;
定义模块,用于在所述单页面项目源码的接口请求文件中通过http请求定义第一菜单权限数据,并在所述单页面项目源码的路由文件中定义第二菜单权限数据;
判断模块,用于判断所述第一菜单权限数据和所述第二菜单权限数据是否匹配;
页面生成和路由挂载模块,用于如果是,则生成菜单页面并动态挂载网页路由。
结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,所述定义模块用于:
新建单页面项目源码的接口请求文件;
在所述接口请求文件中,通过http请求结合封装函数,从服务器定义并获取当前登录用户所拥有的第一菜单权限数据。
结合第二方面,本发明实施例提供了第二方面的第二种可能的实施方式,其中,所述定义模块用于:
新建单页面项目源码的路由文件;
在所述路由文件中写入第二菜单权限数据。
第三方面,本发明实施例还提供一种服务器,所述服务器包括:处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机可执行指令,所述处理器执行所述计算机可执行指令以实现上文所述的方法。
第四方面,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在被处理器调用和执行时,所述计算机可执行指令促使处理器实现上文所述的方法。
本发明实施例带来了以下有益效果:本发明实施例提供的一种动态挂载网页路由的方法及装置,通过单页面脚手架生成单页面项目源码,然后定义第一菜单权限数据和第二菜单权限数据,并在第一菜单权限数据和第二菜单权限数据匹配时生成菜单页面并动态挂载网页路由。本发明实施例的动态挂载网页路由的方法及装置仅在第一菜单权限数据和第二菜单权限数据匹配的情况下才能生成菜单页面并动态挂载网页路由,从而达到了保证网络安全的技术效果。
本发明的其他特征和优点将在随后的说明书中阐述,并且部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构中实现和获得。
为使本发明的上述目的、特征和优点能够更加明显易懂,下文特举优选实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明的具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图进行简单的介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种动态挂载网页路由的方法的流程图;
图2为本发明实施例提供的另一种动态挂载网页路由的方法的流程图;
图3为本发明实施例提供的一种动态挂载网页路由的装置的结构框图;
图4为本发明实施例提供的一种服务器的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在现有的用户进入不同的系统网页的方案中,大部分通过网页路由交由服务器端实现或通过网页路由在网页应用浏览器端实现。但是,上述两种方案分别存在频繁的消耗大量的http或https请求,造成页面等待,影响用户体验以及容易造成系统数据泄露的安全漏洞的问题。基于此,本发明实施例提供了一种动态挂载网页路由的方法及装置,以缓解上述问题。
为了便于对本实施例进行理解,首先对本发明实施例所公开的一种动态挂载网页路由的方法进行详细介绍。
在一种可能的实施方式中,本发明提供了一种动态挂载网页路由的方法。如图1所示为本发明实施例提供的一种动态挂载网页路由的方法的流程图,所述方法包括以下步骤:
步骤s102:通过单页面脚手架生成单页面项目源码。
其中,单页面脚手架为vue-cli,其作用是生成单页面项目源码以及优化打包网页源文件,能避免访问对应的url(uniformresourcelocator,统一资源定位系统)时,频繁进行http或https请求。
步骤s104:在所述单页面项目源码的接口请求文件中通过http请求定义第一菜单权限数据,并在所述单页面项目源码的路由文件中定义第二菜单权限数据。
其中,http(hypertexttransferprotocol,超文本传输协议)为互联网上应用最为广泛的一种网络传输协定,所有的www文件都必须遵守这个标准,设计http最初的目的是为了提供一种发布和接收html(hypertextmarkuplanguage,超文本标记语言)页面的方法。
步骤s106:判断所述第一菜单权限数据和所述第二菜单权限数据是否匹配。
步骤s108:如果是,则生成菜单页面并动态挂载网页路由。
本发明实施例带来了以下有益效果:本发明实施例通过一种动态挂载网页路由的方法,通过单页面脚手架生成单页面项目源码,然后定义第一菜单权限数据和第二菜单权限数据,并在第一菜单权限数据和第二菜单权限数据匹配时生成菜单页面并动态挂载网页路由。本发明实施例的动态挂载网页路由的方法及装置仅在第一菜单权限数据和第二菜单权限数据匹配的情况下才能生成菜单页面并动态挂载网页路由,从而达到了保证网络安全的技术效果。
在实际使用时,为了对定义第一菜单权限数据和第二菜单权限数据、判断第一菜单权限数据和第二菜单权限数据是否匹配、以及在匹配时生成菜单页面并动态挂载网页路由的过程进行更加详细的描述,本发明实施例在图2中示出了本发明实施例提供的另一种动态挂载网页路由的方法的流程图,该方法包括以下步骤:
步骤s202:通过单页面脚手架生成单页面项目源码。
其中,该单页面项目源码包括源码目录。
步骤s204:新建单页面项目源码的接口请求文件。
步骤s206:在所述接口请求文件中,通过http请求结合封装函数,从服务器定义并获取当前登录用户所拥有的第一菜单权限数据。
其中,该第一菜单权限数据为通过http请求获得的,其中,该第一菜单权限数据例如为:
[{
menucode:xxx
}]
步骤s208:新建单页面项目源码的路由文件。
步骤s210:在所述路由文件中写入第二菜单权限数据。
其中,该第二菜单权限数据主要用于http请求服务器之后,与第一菜单权限数据进行比对,筛选出用户拥有的权限菜单。
步骤s212:封装权限过滤函数,对所述第一菜单权限数据和所述第二菜单权限数据进行匹配。
步骤s214:判断所述第一菜单权限数据的菜单权限码和所述第二菜单权限数据的菜单权限码是否相等。
步骤s216:如果是,则确定所述第一菜单权限数据和所述第二菜单权限数据匹配。
步骤s218:通过单页面脚手架打包菜单对应的网页应用,生成所述菜单对应的菜单页面。
步骤s220:利用vue-router框架中的addroutes函数动态挂载网页路由。
综上所述,本发明的动态挂载网页路由的方法及装置,通过单页面脚手架生成单页面项目源码,然后定义第一菜单权限数据和第二菜单权限数据,并在第一菜单权限数据和第二菜单权限数据匹配时生成菜单页面并动态挂载网页路由。本发明实施例的动态挂载网页路由的方法及装置仅在第一菜单权限数据和第二菜单权限数据匹配的情况下才能生成菜单页面并动态挂载网页路由,从而达到了保证网络安全的技术效果。
在另一种可能的实施方式中,对应于上述实施方式提供的动态挂载网页路由的方法,本发明实施例还提供了一种动态挂载网页路由的装置,图3本发明实施例提供的一种动态挂载网页路由的装置的结构框图。如图3所示,所述装置包括:
源码生成模块301,用于通过单页面脚手架生成单页面项目源码;
定义模块302,用于在所述单页面项目源码的接口请求文件中通过http请求定义第一菜单权限数据,并在所述单页面项目源码的路由文件中定义第二菜单权限数据;
判断模块303,用于判断所述第一菜单权限数据和所述第二菜单权限数据是否匹配;
页面生成和路由挂载模块304,用于如果是,则生成菜单页面并动态挂载网页路由。
在实际使用时,所述定义模块302用于:
新建单页面项目源码的接口请求文件;
在所述接口请求文件中,通过http请求结合封装函数,从服务器定义并获取当前登录用户所拥有的第一菜单权限数据。
在实际使用时,所述定义模块302用于:
新建单页面项目源码的路由文件;
在所述路由文件中写入第二菜单权限数据。
在又一种可能的实施方式中,本发明实施例还提供了一种服务器,图4示出了本发明实施例提供的一种服务器的结构示意图,参见图4,该服务器包括:处理器400、存储器401、总线402和通信接口403,该处理器400、存储器401、通信接口403和通过总线402连接;处理器400用于执行存储器401中存储的可执行模块,例如计算机程序。
其中,存储器401存储有能够被处理器400执行的计算机可执行指令,处理器400执行计算机可执行指令以实现上文所述的方法。
进一步地,存储器401可能包含高速随机存取存储器(ram,randomaccessmemory),也可能还包括非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。通过至少一个通信接口403(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。
总线402可以是isa总线、pci总线或eisa总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
其中,存储器401用于存储程序,处理器400在接收到程序执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的动态挂载网页路由的方法可以应用于处理器400中,或者由处理器400实现。
此外,处理器400可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器400中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器400可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(digitalsignalprocessing,简称dsp)、专用集成电路(applicationspecificintegratedcircuit,简称asic)、现成可编程门阵列(field-programmablegatearray,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器401,处理器400读取存储器401中的信息,结合其硬件完成上述方法的步骤。
在又一种可能的实施方式中,本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现上文所述的方法。
本发明实施例提供的动态挂载网页路由的装置,与上述实施例提供的动态挂载网页路由的方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
本发明实施例所提供的动态挂载网页路由的方法及装置的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
1.一种动态挂载网页路由的方法,其特征在于,包括以下步骤:
通过单页面脚手架生成单页面项目源码;
在所述单页面项目源码的接口请求文件中通过http请求定义第一菜单权限数据,并在所述单页面项目源码的路由文件中定义第二菜单权限数据;
判断所述第一菜单权限数据和所述第二菜单权限数据是否匹配;
如果是,则生成菜单页面并动态挂载网页路由。
2.根据权利要求1所述的方法,其特征在于,所述在所述单页面项目源码的接口请求文件中通过http请求定义第一菜单权限数据的步骤,包括:
新建单页面项目源码的接口请求文件;
在所述接口请求文件中,通过http请求结合封装函数,从服务器定义并获取当前登录用户所拥有的第一菜单权限数据。
3.根据权利要求1所述的方法,其特征在于,所述在所述单页面项目源码的路由文件中定义第二菜单权限数据的步骤,包括:
新建单页面项目源码的路由文件;
在所述路由文件中写入第二菜单权限数据。
4.根据权利要求1所述的方法,其特征在于,所述判断所述第一菜单权限数据和所述第二菜单权限数据是否匹配的步骤,包括:
封装权限过滤函数,对所述第一菜单权限数据和所述第二菜单权限数据进行匹配;
判断所述第一菜单权限数据的菜单权限码和所述第二菜单权限数据的菜单权限码是否相等;
如果是,则确定所述第一菜单权限数据和所述第二菜单权限数据匹配。
5.根据权利要求1所述的方法,其特征在于,所述生成菜单页面并动态挂载网页路由的步骤,包括:
通过单页面脚手架打包菜单对应的网页应用,生成所述菜单对应的菜单页面;
利用vue-router框架中的addroutes函数动态挂载网页路由。
6.一种动态挂载网页路由的装置,其特征在于,所述装置包括:
源码生成模块,用于通过单页面脚手架生成单页面项目源码;
定义模块,用于在所述单页面项目源码的接口请求文件中通过http请求定义第一菜单权限数据,并在所述单页面项目源码的路由文件中定义第二菜单权限数据;
判断模块,用于判断所述第一菜单权限数据和所述第二菜单权限数据是否匹配;
页面生成和路由挂载模块,用于如果是,则生成菜单页面并动态挂载网页路由。
7.根据权利要求6所述的装置,其特征在于,所述定义模块用于:
新建单页面项目源码的接口请求文件;
在所述接口请求文件中,通过http请求结合封装函数,从服务器定义并获取当前登录用户所拥有的第一菜单权限数据。
8.根据权利要求6所述的装置,其特征在于,所述定义模块用于:
新建单页面项目源码的路由文件;
在所述路由文件中写入第二菜单权限数据。
9.一种服务器,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机可执行指令,所述处理器执行所述计算机可执行指令以实现权利要求1至5任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在被处理器调用和执行时,所述计算机可执行指令促使处理器实现权利要求1至5任一项所述的方法。
技术总结