业务请求的处理方法、装置、系统、电子设备及存储介质与流程

文档序号:19791899发布日期:2020-01-24 14:24阅读:165来源:国知局
业务请求的处理方法、装置、系统、电子设备及存储介质与流程

本申请涉及信息处理技术领域,具体而言,本申请涉及一种业务请求的处理方法、装置、电子设备及计算机可读存储介质。



背景技术:

随着互联网的不断发展,互联网技术以也随着相应的获得了不断的提升。曾经的仅用于大型企业的业务系统和程序如今正在不断的向着平民化进程发展。

尤其是随着各大平台,比如微信小程序平台、360小程序平台等的争相竞争与合作,导致了企业所拥有的系统的数量也在成倍增加。如此庞大的市场之下,许多希望做平台为主的中小型公司在创业初期为了尽可能的获得更多的用户量,都会以更快的速度和更好的质量去不断完善自身的系统,由此才能在业务量增长的情况下同时又能维系系统的稳定性,而无论是什么样的平台,用户身份认证的问题永远是需要被解决的问题的第一环。

目前市面上的用于登录的主要方式是前端,比如移动端或pc端,向后端,比如服务器端,发起业务请求,请求成功时,获取后端返回的token。这样,每次前端的请求都需要后端系统拿着当前的token去找授权服务器进行验证。但是这种方式的缺陷就是:每一次的请求认证都需要带着token去访问授权服务器,如果授权服务器出现问题,将导致所有移动端、pc端的系统陷入崩溃,这对于平台而言是灾难性的。

或者,利用jwt(jsonwebtoken)的token签发机制,当用户登录时签发一个token,然后放入header部分返回给用户,这样用户的后续所有请求均携带该token。但是,该方法也存在如下缺陷:在jwt的token签发机制中,token在生成时就自带过期时间,当该token的过期时间结束时,该token就无效了,用户在发起业务请求的时候就需要重新登录,不仅业务处理的效率较低,而且用户的体验也较差。



技术实现要素:

本申请提供了一种业务请求的处理的方法、装置、电子设备及计算机可读存储介质,可以解决现有技术中,令牌的使用时间就是生成时自带的固定时间,无法延长的问题,以及,每一次的请求认证都需要带着令牌去访问授权服务器的问题。所述技术方案如下:

第一方面,提供了一种业务请求的处理的方法,该方法包括:

当接收到终端发起的业务请求时,从所述业务请求中提取原始令牌;

将所述原始令牌与预设缓存中的任一目标令牌进行匹配;

当不存在匹配的目标令牌时,向所述终端发送匹配失败信息,以使得所述终端接收到所述匹配失败信息后,展示预设的登录页面,所述登录页面用于接收用户输入的用户信息和登录指令,并基于所述用户信息和所述登录指令生成登录请求,以及,将所述登录请求发送至预设的主系统,以使得所述主系统对所述登录请求中的用户信息进行验证,生成验证结果并向所述子系统发送所述验证结果;

当接收到的所述验证结果为验证成功时,对所述业务请求进行相应的业务处理。

优选地,还包括:

当存在匹配的目标令牌时,对所述业务请求进行相应的业务处理,并刷新所述目标令牌预设的有效时间。

优选地,还包括:

当接收到的所述验证结果为验证失败时,挂起所述业务请求,直至接收到的所述验证结果为验证成功,或,直至所述业务请求过期,丢弃所述业务请求。

优选地,所述从所述业务请求中提取原始令牌的步骤,包括:

从所述业务请求的header和/或cookie中提取所述原始令牌;

不存在匹配的目标令牌的方式,包括:

从所述业务请求的header中提取的所述原始令牌与所述预设缓存中的任一目标令牌不匹配,以及,从所述业务请求的cookie中提取的所述原始令牌与所述预设缓存中的任一目标令牌不匹配。

优选地,在生成验证结果并向所述子系统发送所述验证结果之前,还包括:

当所述验证结果为验证成功时,基于所述用户信息生成jwt标准的目标令牌存储至所述预设缓存;

生成响应信息,将所述目标令牌写入所述响应信息的header和cookie,并将所述响应信息发送至所述终端。

优选地,还包括:

当任一目标令牌在有效时间内与任一原始令牌均匹配失败,则从所述预设缓存中删除所述目标令牌。

第二方面,提供了一种业务请求的处理的系统,该系统包括:

当子系统接收到终端发起的业务请求时,从所述业务请求中提取原始令牌;

所述子系统将所述原始令牌与预设缓存中的任一目标令牌进行匹配;

当不存在匹配的目标令牌时,所述子系统向所述终端发送匹配失败信息;

当所述终端接收到所述匹配失败信息,展示预设的登录页面,所述登录页面用于接收用户输入的用户信息和登录指令;

所述终端基于所述用户信息和所述登录指令生成登录请求,并将所述登录请求发送至预设的主系统;

所述主系统对所述登录请求中的用户信息进行验证,生成验证结果并向所述子系统发送所述验证结果;

当所述子系统接收到的所述验证结果为验证成功,对所述业务请求进行相应的业务处理。

第三方面,提供了一种业务请求的处理的装置,该装置包括:

接收模块,用于接收终端发起的业务请求;

提取模块,用于从所述业务请求中提取原始令牌;

匹配模块,用于将所述原始令牌与预设缓存中的任一目标令牌进行匹配;

发送模块,用于当不存在匹配的目标令牌时,向所述终端发送匹配失败信息,以使得所述终端接收到所述匹配失败信息后,展示预设的登录页面,所述登录页面用于接收用户输入的用户信息和登录指令,并基于所述用户信息和所述登录指令生成登录请求,以及,将所述登录请求发送至预设的主系统,以使得所述主系统对所述登录请求中的用户信息进行验证,生成验证结果并向所述子系统发送所述验证结果;

处理模块,用于当接收到的所述验证结果为验证成功时,对所述业务请求进行相应的业务处理。

优选地,还包括:

所述处理模块,还用于当存在匹配的目标令牌时,对所述业务请求进行相应的业务处理;

刷新模块,用于刷新所述目标令牌预设的有效时间。

优选地,还包括:

挂起模块,用于当接收到的所述验证结果为验证失败时,挂起所述业务请求,直至接收到的所述验证结果为验证成功;

丢弃模块,用于当接收到的所述验证结果为验证失败时,挂起所述业务请求,直至所述业务请求过期,丢弃所述业务请求。

优选地,所述提取模块具体用于:

从所述业务请求的header和/或cookie中提取所述原始令牌;

不存在匹配的目标令牌的方式,包括:

从所述业务请求的header中提取的所述原始令牌与所述预设缓存中的任一目标令牌不匹配,以及,从所述业务请求的cookie中提取的所述原始令牌与所述预设缓存中的任一目标令牌不匹配。

优选地,在生成验证结果并向所述子系统发送所述验证结果之前,还包括:

当所述验证结果为验证成功时,基于所述用户信息生成jwt标准的目标令牌存储至所述预设缓存;

生成响应信息,将所述目标令牌写入所述响应信息的header和cookie,并将所述响应信息发送至所述终端。

优选地,还包括:

删除模块,用于当任一目标令牌在有效时间内与任一原始令牌均匹配失败,则从所述预设缓存中删除所述目标令牌。

第四方面,提供了一种电子设备,该电子设备包括:

处理器、存储器和总线;

所述总线,用于连接所述处理器和所述存储器;

所述存储器,用于存储操作指令;

所述处理器,用于通过调用所述操作指令,可执行指令使处理器执行如本申请的第一方面所示的业务请求的处理的方法对应的操作。

第五方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现本申请第一方面所示的业务请求的处理的方法。

本申请提供的技术方案带来的有益效果是:

在本发明实施例中,当子系统接收到终端发起的业务请求时,从所述业务请求中提取原始令牌,然后将所述原始令牌与预设缓存中的任一目标令牌进行匹配,当不存在匹配的目标令牌时,向所述终端发送匹配失败信息,以使得所述终端接收到所述匹配失败信息后,展示预设的登录页面,所述登录页面用于接收用户输入的用户信息和登录指令,并基于所述用户信息和所述登录指令生成登录请求,以及,将所述登录请求发送至预设的主系统,以使得所述主系统对所述登录请求中的用户信息进行验证,生成验证结果并向所述子系统发送所述验证结果;当子系统接收到的所述验证结果为验证成功时,对所述业务请求进行相应的业务处理。这样,通过设置缓存和为缓存中的令牌设置有效时间的方式,不仅延长了令牌的使用时间,而且也不需要主系统对每个业务请求进行验证,解决了现有技术中,令牌的使用时间就是生成时自带的固定时间,无法延长的问题,以及,每一次的请求认证都需要带着令牌去访问授权服务器的问题,使得在固定时间之后,用户在不进行身份验证的情况下,依然可以进行业务处理,不仅提高了业务处理的效率,而且还提升了用户体验。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。

图1为本申请一个实施例提供的一种业务请求的处理方法的流程示意图;

图2为本申请另一实施例提供的一种业务请求的处理方法的流程示意图;

图3为本申请又一实施例提供的一种业务请求的处理系统的交互示意图;

图4为本申请又一实施例提供的一种业务请求的处理装置的结构示意图;

图5为本申请又一实施例提供的一种业务请求的处理的电子设备的结构示意图。

具体实施方式

下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本发明的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。

本申请提供的业务请求的处理方法、装置、电子设备和计算机可读存储介质,旨在解决现有技术的如上技术问题。

下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。

在一个实施例中提供了一种业务请求的处理的方法,如图1所示,该方法应用于子系统,包括:

步骤s101,当接收到终端发起的业务请求时,从业务请求中提取原始令牌;

其中,子系统可以是业务处理系统、管理系统或者其它系统,可以用于针对用户的业务请求进行相应的业务处理。在实际应用中,可以设置一个子系统来处理多种类型的业务,也可以设置多个子系统分别处理不同类型的业务。

步骤s102,将原始令牌与预设缓存中的任一目标令牌进行匹配;

具体而言,预设缓存中可以存储多个目标令牌,也可以是jwt标准的令牌。当子系统从业务请求中提取出原始令牌后,就可以将原始令牌与预存中的各个目标令牌进行匹配,确定是否存在匹配项。如果存在匹配项,则表示该用户的身份合法,子系统可以对该用户的业务请求进行相应的业务处理,如果不存在匹配项,则表示该用户的身份不合法,子系统无法对该用户的业务请求进行相应的业务处理,同时,该用户需要进行身份验证。

步骤s103,当不存在匹配的目标令牌时,向终端发送匹配失败信息,以使得终端接收到匹配失败信息后,展示预设的登录页面,登录页面用于接收用户输入的用户信息和登录指令,并基于用户信息和登录指令生成登录请求,以及,将登录请求发送至预设的主系统,以使得主系统对登录请求中的用户信息进行验证,生成验证结果并向子系统发送验证结果;

步骤s104,当接收到的验证结果为验证成功时,对业务请求进行相应的业务处理。

其中,有效时间为目标令牌在缓存中的可存储时间。在本发明实施例中,如果缓存中存在与原始令牌匹配的目标令牌,那么就可以刷新该目标令牌的有效时间,并对业务请求进行相应的业务处理了。

在本发明实施例中,当子系统接收到终端发起的业务请求时,从业务请求中提取原始令牌,然后将原始令牌与预设缓存中的任一目标令牌进行匹配,当不存在匹配的目标令牌时,向终端发送匹配失败信息,以使得终端接收到匹配失败信息后,展示预设的登录页面,登录页面用于接收用户输入的用户信息和登录指令,并基于用户信息和登录指令生成登录请求,以及,将登录请求发送至预设的主系统,以使得主系统对登录请求中的用户信息进行验证,生成验证结果并向子系统发送验证结果;当子系统接收到的验证结果为验证成功时,对业务请求进行相应的业务处理。这样,通过设置缓存和为缓存中的令牌设置有效时间的方式,不仅延长了令牌的使用时间,而且也不需要主系统对每个业务请求进行验证,解决了现有技术中,令牌的使用时间就是生成时自带的固定时间,无法延长的问题,以及,每一次的请求认证都需要带着令牌去访问授权服务器的问题,使得在固定时间之后,用户在不进行身份验证的情况下,依然可以进行业务处理,不仅提高了业务处理的效率,而且还提升了用户体验。

在一个实施例中提供了一种业务请求的处理的方法,如图2所示,该方法应用于子系统,包括:

步骤s201,当接收到终端发起的业务请求时,从业务请求中提取原始令牌;

其中,子系统可以是业务处理系统、管理系统或者其它系统,可以用于针对用户的业务请求进行相应的业务处理。在实际应用中,可以设置一个子系统来处理多种类型的业务,也可以设置多个子系统分别处理不同类型的业务。为方便描述,本申请仅以一个系统处理一种类型的业务为例进行说明,其它情况与此原理相同,本申请就不赘述了。

所谓令牌,也称token,通常来说,token是在后端产生的,如果前端使用用户名/密码向服务端请求认证,后端认证成功,那么后端会返回token给前端,前端可以在每次请求的时候带上token证明自己的合法地位。其中,前端可以是用户的终端设备,用户可以在该终端设备上安装应用程序客户端,并在应用程序客户端中发起业务请求,该终端设备可以具有如下特点:

(1)在硬件体系上,设备具备中央处理器、存储器、输入部件和输出部件,也就是说,设备往往是具备通信功能的微型计算机设备。另外,还可以具有多种输入方式,诸如键盘、鼠标、触摸屏、送话器和摄像头等,并可以根据需要进行调整输入。同时,设备往往具有多种输出方式,如受话器、显示屏等,也可以根据需要进行调整;

(2)在软件体系上,设备必须具备操作系统,如windowsmobile、symbian、palm、android、ios等。同时,这些操作系统越来越开放,基于这些开放的操作系统平台开发的个性化应用程序层出不穷,如通信簿、日程表、记事本、计算器以及各类游戏等,极大程度地满足了个性化用户的需求;

(3)在通信能力上,设备具有灵活的接入方式和高带宽通信性能,并且能根据所选择的业务和所处的环境,自动调整所选的通信方式,从而方便用户使用。设备可以支持gsm(globalsystemformobilecommunication,全球移动通信系统)、wcdma(widebandcodedivisionmultipleaccess,宽带码分多址)、cdma2000(codedivisionmultipleaccess,码分多址)、tdscdma(timedivision-synchronouscodedivisionmultipleaccess,时分同步码分多址)、wi-fi(wireless-fidelity,无线保真)以及wimax(worldwideinteroperabilityformicrowaveaccess,全球微波互联接入)等,从而适应多种制式网络,不仅支持语音业务,更支持多种无线数据业务;

(4)在功能使用上,设备更加注重人性化、个性化和多功能化。随着计算机技术的发展,设备从“以设备为中心”的模式进入“以人为中心”的模式,集成了嵌入式计算、控制技术、人工智能技术以及生物认证技术等,充分体现了以人为本的宗旨。由于软件技术的发展,设备可以根据个人需求调整设置,更加个性化。同时,设备本身集成了众多软件和硬件,功能也越来越强大。

在本发明一种优选实施例中,从业务请求中提取原始令牌的步骤,包括:

从业务请求的header和/或cookie中提取原始令牌。

具体而言,终端可以采用http(hypertexttransferprotocol,超文本传输协议)协议向子系统发送业务请求,其中,业务请求中的header与cookie中的至少一个可以携带用户对应的原始令牌。

进一步,本发明实施例中的令牌可以是jwt(jsonwebtoken)标准的令牌。其中,jsonwebtoken是一个开放标准(rfc7519),它定义了一种紧凑的、自包含的方式,用于作为json对象在各方之间安全地传输信息。

步骤s202,将原始令牌与预设缓存中的任一目标令牌进行匹配;

具体而言,预设缓存中可以存储多个目标令牌,也可以是jwt标准的令牌。当子系统从业务请求中提取出原始令牌后,就可以将原始令牌与预存中的各个目标令牌进行匹配,确定是否存在匹配项。如果存在匹配项,则表示该用户的身份合法,子系统可以对该用户的业务请求进行相应的业务处理,如果不存在匹配项,则表示该用户的身份不合法,子系统无法对该用户的业务请求进行相应的业务处理,同时,该用户需要进行身份验证。

步骤s203,当不存在匹配的目标令牌时,向终端发送匹配失败信息,以使得终端接收到匹配失败信息后,展示预设的登录页面,登录页面用于接收用户输入的用户信息和登录指令,并基于用户信息和登录指令生成登录请求,以及,将登录请求发送至预设的主系统,以使得主系统对登录请求中的用户信息进行验证,生成验证结果并向子系统发送验证结果;

在本发明一种优选实施例中,不存在匹配的目标令牌的方式,包括:

从业务请求的header中提取的原始令牌与预设缓存中的任一目标令牌不匹配,以及,从业务请求的cookie中提取的原始令牌与预设缓存中的任一目标令牌不匹配。

具体而言,因为header中可以包含原始令牌,cookie中也可以包含原始令牌,或者二者可以同时包含原始令牌,所以,子系统从二者中任一一个中提取到的原始令牌存在匹配的目标令牌即可。但是,如果子系统从二者中提取到的原始令牌与任何一个目标令牌都不匹配,那么就可以确定不存在与原始令牌匹配的目标令牌,也就是用户身份不合法。

此时终端可以向终端发送匹配失败信息,终端接收到匹配失败信息后,就可以展示预设的登录页面,让用户重新进行身份验证。用户可以在登录页面中输入用户名、密码等身份信息,当用户发起登录指令时,终端可以依据身份信息和用户的常用信息(身份信息和用户的常用信息即用户信息)生成登录请求,并将登录请求发送至主系统进行身份验证,主系统接收到登录请求后从登录请求中提取出用户信息并进行验证,然后将验证结果发送至子系统。其中,主系统可以是单点登录系统,用于对用户信息进行验证,并且,当验证通过时,生成jwt标准的令牌。

步骤s204,当存在匹配的目标令牌时,对业务请求进行相应的业务处理,并刷新目标令牌预设的有效时间;

其中,有效时间为目标令牌在缓存中的可存储时间。比如,某个目标令牌的有效时间为1天,那么就表示该目标令牌可以在缓存中存储1天。在本发明实施例中,如果缓存中存在与原始令牌匹配的目标令牌,那么就可以刷新该目标令牌的有效时间,并对业务请求进行相应的业务处理了。

步骤s205,当接收到的验证结果为验证成功时,对业务请求进行相应的业务处理;

具体而言,不存在匹配的目标令牌,子系统可以先将该业务请求挂起,当子系统接收到主系统发送的验证结果为验证成功后,再对用户的业务请求进行相应的业务处理即可。

或者,如果不存在匹配的目标令牌,子系统还可以丢弃用户的业务请求,当用户验证通过后,用户重新发起一次新的业务请求,此时,新的业务请求中的原始令牌就存在匹配的目标令牌了,子系统就可以对新的业务请求进行相应的业务处理了。在实际应用中,可以根据实际需求进行相应的调整,本发明实施例对此不作限制。

步骤s206,当接收到的验证结果为验证失败时,挂起业务请求,直至接收到的验证结果为验证成功,或,直至业务请求过期,丢弃业务请求。

具体而言,如果子系统接收到的验证结果为验证失败,那么子系统可以将业务请求挂起,直到接收到的验证结果为验证成功,就可以对该业务请求进行相应的业务处理。

在子系统挂起业务请求期间,主系统对用户信息验证失败后,可以提示用户验证失败,这样用户可以重新登录,直至登录成功。

当然,为了防止用户一直登录失败,或者用户放弃登录,导致子系统需要一直挂起业务请求,从而浪费了系统资源和硬件资源,可以为业务请求设置一个过期时间,比如10分钟,如果到了过期时间,用户还是登录失败,那么子系统就可以将该业务请求进行丢弃。

在本发明一种优选实施例中,在生成验证结果并向子系统发送验证结果之前,还包括:

当验证结果为验证成功时,基于用户信息生成jwt标准的目标令牌存储至预设缓存;

生成响应信息,将目标令牌写入响应信息的header和cookie,并将响应信息发送至终端。

具体而言,当主系统对用户信息验证通过后,就可以采用用户信息生成jwt标准的目标令牌并存储至预设缓存,同时,生成响应信息,将目标令牌写入响应信息的header和cookie中,然后发送至终端,这样,终端在接收到响应信息后,就可以从响应信息的header和cookie中获取令牌,终端在发起下一次业务请求时,就可以将该令牌作为原始令牌写入业务请求的header和/或cookie中。

步骤s207,当任一目标令牌在有效时间内与任一原始令牌均匹配失败,则从预设缓存中删除目标令牌。

具体而言,如果任一目标令牌在有效时间内与任一原始令牌均匹配失败了,那么就表示该目标令牌对应的用户没有发起任何业务请求,因此,当该目标令牌的有效时间结束后,从缓存中删除该目标令牌即可,从而减少资源浪费。比如,用户a对应的目标令牌a’的有效时间为24小时,用户a在24小时内没有发起任何业务请求,那么在24小时后,就会从缓存中删除目标令牌a’。

如果在目标令牌的有效时间内,用户发起了任一业务请求,那么就可以刷新该目标令牌的有效时间。比如,用户b对应的目标令牌b’的有效时间为24小时,当前有效时间还剩10秒,此时用户b发起了某个业务请求,那么在匹配成功后,就可以将目标令牌b’的有效时间刷新为24小时。

在本发明实施例中,当子系统接收到终端发起的业务请求时,从业务请求中提取原始令牌,然后将原始令牌与预设缓存中的任一目标令牌进行匹配,当不存在匹配的目标令牌时,向终端发送匹配失败信息,以使得终端接收到匹配失败信息后,展示预设的登录页面,登录页面用于接收用户输入的用户信息和登录指令,并基于用户信息和登录指令生成登录请求,以及,将登录请求发送至预设的主系统,以使得主系统对登录请求中的用户信息进行验证,生成验证结果并向子系统发送验证结果;当子系统接收到的验证结果为验证成功时,对业务请求进行相应的业务处理。这样,通过设置缓存和为缓存中的令牌设置有效时间的方式,不仅延长了令牌的使用时间,而且也不需要主系统对每个业务请求进行验证,解决了现有技术中,令牌的使用时间就是生成时自带的固定时间,无法延长的问题,以及,每一次的请求认证都需要带着令牌去访问授权服务器的问题,使得在固定时间之后,用户在不进行身份验证的情况下,依然可以进行业务处理,不仅提高了业务处理的效率,而且还提升了用户体验。

而且,当缓存中的目标令牌被使用一次后,即可刷新该目标令牌的使用时间,动态延长了目标令牌的使用时间,进一步提高了业务处理的效率,提升了用户体验。

在一个实施例中提供了一种业务请求的处理的系统,如图3所示,该系统包括:

步骤s301,当子系统接收到终端发起的业务请求时,从业务请求中提取原始令牌;

步骤s302,子系统将原始令牌与预设缓存中的任一目标令牌进行匹配;

步骤s303,当不存在匹配的目标令牌时,子系统向终端发送匹配失败信息;

步骤s304,当终端接收到匹配失败信息,展示预设的登录页面,登录页面用于接收用户输入的用户信息和登录指令;

步骤s305,终端基于用户信息和登录指令生成登录请求,并将登录请求发送至预设的主系统;

步骤s306,主系统对登录请求中的用户信息进行验证,生成验证结果并向子系统发送验证结果;

步骤s307,当子系统接收到的验证结果为验证成功,对业务请求进行相应的业务处理。

本实施例的业务请求的处理系统可执行本申请步骤s101~步骤s104、步骤s201~步骤s207所示的业务请求的处理方法,其实现原理相类似,此处不再赘述。

在本发明实施例中,当子系统接收到终端发起的业务请求时,从业务请求中提取原始令牌,然后将原始令牌与预设缓存中的任一目标令牌进行匹配,当不存在匹配的目标令牌时,向终端发送匹配失败信息,以使得终端接收到匹配失败信息后,展示预设的登录页面,登录页面用于接收用户输入的用户信息和登录指令,并基于用户信息和登录指令生成登录请求,以及,将登录请求发送至预设的主系统,以使得主系统对登录请求中的用户信息进行验证,生成验证结果并向子系统发送验证结果;当子系统接收到的验证结果为验证成功时,对业务请求进行相应的业务处理。这样,通过设置缓存和为缓存中的令牌设置有效时间的方式,不仅延长了令牌的使用时间,而且也不需要主系统对每个业务请求进行验证,解决了现有技术中,令牌的使用时间就是生成时自带的固定时间,无法延长的问题,以及,每一次的请求认证都需要带着令牌去访问授权服务器的问题,使得在固定时间之后,用户在不进行身份验证的情况下,依然可以进行业务处理,不仅提高了业务处理的效率,而且还提升了用户体验。

而且,当缓存中的目标令牌被使用一次后,即可刷新该目标令牌的使用时间,动态延长了目标令牌的使用时间,进一步提高了业务处理的效率,提升了用户体验。

图4为本申请又一实施例提供的一种业务请求的处理装置的结构示意图,如图4所示,本实施例的装置可以包括:

接收模块401,用于接收终端发起的业务请求;

提取模块402,用于从业务请求中提取原始令牌;

匹配模块403,用于将原始令牌与预设缓存中的任一目标令牌进行匹配;

发送模块404,用于当不存在匹配的目标令牌时,向终端发送匹配失败信息,以使得终端接收到匹配失败信息后,展示预设的登录页面,登录页面用于接收用户输入的用户信息和登录指令,并基于用户信息和登录指令生成登录请求,以及,将登录请求发送至预设的主系统,以使得主系统对登录请求中的用户信息进行验证,生成验证结果并向子系统发送验证结果;

处理模块405,用于当接收到的验证结果为验证成功时,对业务请求进行相应的业务处理。

在本发明一种优选实施例中,还包括:

处理模块,还用于当存在匹配的目标令牌时,对业务请求进行相应的业务处理;

刷新模块,用于刷新目标令牌预设的有效时间。

在本发明一种优选实施例中,还包括:

挂起模块,用于当接收到的验证结果为验证失败时,挂起业务请求,直至接收到的验证结果为验证成功;

丢弃模块,用于当接收到的验证结果为验证失败时,挂起业务请求,直至业务请求过期,丢弃业务请求。

在本发明一种优选实施例中,提取模块具体用于:

从业务请求的header和/或cookie中提取原始令牌;

不存在匹配的目标令牌的方式,包括:

从业务请求的header中提取的原始令牌与预设缓存中的任一目标令牌不匹配,以及,从业务请求的cookie中提取的原始令牌与预设缓存中的任一目标令牌不匹配。

在本发明一种优选实施例中,在生成验证结果并向子系统发送验证结果之前,还包括:

当验证结果为验证成功时,基于用户信息生成jwt标准的目标令牌存储至预设缓存;

生成响应信息,将目标令牌写入响应信息的header和cookie,并将响应信息发送至终端。

在本发明一种优选实施例中,还包括:

删除模块,用于当任一目标令牌在有效时间内与任一原始令牌均匹配失败,则从预设缓存中删除目标令牌。

本实施例的业务请求的处理装置可执行本申请步骤s101~步骤s104、步骤s201~步骤s207所示的业务请求的处理方法,其实现原理相类似,此处不再赘述。

在本发明实施例中,当子系统接收到终端发起的业务请求时,从业务请求中提取原始令牌,然后将原始令牌与预设缓存中的任一目标令牌进行匹配,当不存在匹配的目标令牌时,向终端发送匹配失败信息,以使得终端接收到匹配失败信息后,展示预设的登录页面,登录页面用于接收用户输入的用户信息和登录指令,并基于用户信息和登录指令生成登录请求,以及,将登录请求发送至预设的主系统,以使得主系统对登录请求中的用户信息进行验证,生成验证结果并向子系统发送验证结果;当子系统接收到的验证结果为验证成功时,对业务请求进行相应的业务处理。这样,通过设置缓存和为缓存中的令牌设置有效时间的方式,不仅延长了令牌的使用时间,而且也不需要主系统对每个业务请求进行验证,解决了现有技术中,令牌的使用时间就是生成时自带的固定时间,无法延长的问题,以及,每一次的请求认证都需要带着令牌去访问授权服务器的问题,使得在固定时间之后,用户在不进行身份验证的情况下,依然可以进行业务处理,不仅提高了业务处理的效率,而且还提升了用户体验。

而且,当缓存中的目标令牌被使用一次后,即可刷新该目标令牌的使用时间,动态延长了目标令牌的使用时间,进一步提高了业务处理的效率,提升了用户体验。

本申请的又一实施例中提供了一种电子设备,该电子设备包括:存储器和处理器;至少一个程序,存储于存储器中,用于被处理器执行时,与现有技术相比可实现:在本发明实施例中,当子系统接收到终端发起的业务请求时,从所述业务请求中提取原始令牌,然后将所述原始令牌与预设缓存中的任一目标令牌进行匹配,当不存在匹配的目标令牌时,向所述终端发送匹配失败信息,以使得所述终端接收到所述匹配失败信息后,展示预设的登录页面,所述登录页面用于接收用户输入的用户信息和登录指令,并基于所述用户信息和所述登录指令生成登录请求,以及,将所述登录请求发送至预设的主系统,以使得所述主系统对所述登录请求中的用户信息进行验证,生成验证结果并向所述子系统发送所述验证结果;当子系统接收到的所述验证结果为验证成功时,对所述业务请求进行相应的业务处理。这样,通过设置缓存和为缓存中的令牌设置有效时间的方式,不仅延长了令牌的使用时间,而且也不需要主系统对每个业务请求进行验证,解决了现有技术中,令牌的使用时间就是生成时自带的固定时间,无法延长的问题,以及,每一次的请求认证都需要带着令牌去访问授权服务器的问题,使得在固定时间之后,用户在不进行身份验证的情况下,依然可以进行业务处理,不仅提高了业务处理的效率,而且还提升了用户体验。

在一个可选实施例中提供了一种电子设备,如图5所示,图5所示的电子设备5000包括:处理器5001和存储器5003。其中,处理器5001和存储器5003相连,如通过总线5002相连。可选地,电子设备5000还可以包括收发器5004。需要说明的是,实际应用中收发器5004不限于一个,该电子设备5000的结构并不构成对本申请实施例的限定。

处理器5001可以是cpu,通用处理器,dsp,asic,fpga或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器5001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等。

总线5002可包括一通路,在上述组件之间传送信息。总线5002可以是pci总线或eisa总线等。总线5002可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

存储器5003可以是rom或可存储静态信息和指令的其他类型的静态存储设备,ram或者可存储信息和指令的其他类型的动态存储设备,也可以是eeprom、cd-rom或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。

存储器5003用于存储执行本申请方案的应用程序代码,并由处理器5001来控制执行。处理器5001用于执行存储器5003中存储的应用程序代码,以实现前述任一方法实施例所示的内容。

其中,电子设备包括但不限于:移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字tv、台式计算机等等的固定终端。

本申请的又一实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。与现有技术相比,在本发明实施例中,当子系统接收到终端发起的业务请求时,从所述业务请求中提取原始令牌,然后将所述原始令牌与预设缓存中的任一目标令牌进行匹配,当不存在匹配的目标令牌时,向所述终端发送匹配失败信息,以使得所述终端接收到所述匹配失败信息后,展示预设的登录页面,所述登录页面用于接收用户输入的用户信息和登录指令,并基于所述用户信息和所述登录指令生成登录请求,以及,将所述登录请求发送至预设的主系统,以使得所述主系统对所述登录请求中的用户信息进行验证,生成验证结果并向所述子系统发送所述验证结果;当子系统接收到的所述验证结果为验证成功时,对所述业务请求进行相应的业务处理。这样,通过设置缓存和为缓存中的令牌设置有效时间的方式,不仅延长了令牌的使用时间,而且也不需要主系统对每个业务请求进行验证,解决了现有技术中,令牌的使用时间就是生成时自带的固定时间,无法延长的问题,以及,每一次的请求认证都需要带着令牌去访问授权服务器的问题,使得在固定时间之后,用户在不进行身份验证的情况下,依然可以进行业务处理,不仅提高了业务处理的效率,而且还提升了用户体验。

应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

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