一种登录状态自动续约的方法及终端与流程

文档序号:17247933发布日期:2019-03-30 08:55阅读:582来源:国知局
一种登录状态自动续约的方法及终端与流程

本发明涉及数据处理技术领域,尤其涉及一种登录状态自动续约的方法及终端。



背景技术:

由于网页登录的账号对应的token存在过期时间,为了长时间维持登录状态,业界普遍的方案有:

1、服务端在收到用户网络请求时,自动延长token过期时间。这种方案的缺点是不灵活,无法满足大规模网站应用下复杂的业务需求,性能也不高。

2、客户端创建一个网络请求拦截器,在网络发起请求后,访问网络前,获取token的过期时间,如果“即将过期”,那么发起一个续约请求,通知服务端延长token过期时间。这种方案的缺点是如果用户在“即将过期”这段时间内没有触发请求,就丢失了登录状态。

3、客户端创建一个网络请求拦截器,在网络请求前,根据随机数判断是否自动续约,如果是就发送自动续约请求。这种方案的缺点是,无法完全解决token失效的问题,而且网络请求数量将增加,服务端压力增大。



技术实现要素:

本发明所要解决的技术问题是:本发明提供了一种能够自动进行登录状态续约的方法及终端,且具有高效的处理性能。

为了解决上述技术问题,本发明提供了一种登录状态自动续约的方法,包括以下步骤:

s1:当网页启动时,获取网页当前账号对应的token;

s2:判断所述token是否有效,若无效,则跳转至网页的登录页面;若有效,则获取所述token的上一次续签时间点,并执行s3;

s3:根据上一次续签时间点和当前时间点,得到续签时间段,判断所述续签时间段是否超过预设的时间段阈值,若是,则续签所述token,以实现当前账号的登录状态的自动续约。

本发明提供了一种登录状态自动续约的终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

s1:当网页启动时,获取网页当前账号对应的token;

s2:判断所述token是否有效,若无效,则跳转至网页的登录页面;若有效,则获取所述token的上一次续签时间点,并执行s3;

s3:根据上一次续签时间点和当前时间点,得到续签时间段,判断所述续签时间段是否超过预设的时间段阈值,若是,则续签所述token,以实现当前账号的登录状态的自动续约。

本发明的有益效果为:

本发明提供的一种登录状态自动续约的方法和终端,当网页启动时,获取当前账号对应的token,判断token是否有效,若有效,则获取当前时间点及token的上一次续签时间点,得到续签时间段,判断其是否超过预设的时间段阈值,若是,则续签所述token,以实现当前账号的登录状态的自动续约。本发明具有如下优点:1、相比于网络请求拦截器的方案,其触发时间在于网页发送网络请求后,访问网络前,通过获取token的过期时间,并根据token的过期时间,判断是否需要执行续约操作,而本发明是将自动续约的触发时机,选择在用户进入网页的时,即本发明相对于网络请求拦截器的方案,提前执行自动续约的触发操作,使得网页的处理效率得到了提高,同时本发明步骤简单,执行难度小;2、设置的时间段阈值,只有超过阈值时,才触发自动续约,这是因为一个网站可能被多次刷新(比如从一个页面跳转到另一个页面),如果每次都续约就会有不必要的性能消耗。

附图说明

图1为根据本发明实施例的一种登录状态自动续约的方法的主要步骤示意图;

图2为根据本发明实施例的一种登录状态自动续约的终端的结构示意图;

图3为根据本发明实施例五的一种登录状态自动续约的方法的流程图;

标号说明:

1、存储器;2、处理器。

具体实施方式

为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图详予说明。

本发明最关键的构思为:当网页启动时,获取当前账号对应的token,判断token是否有效,若有效,则获取当前时间点及token的上一次续签时间点,得到续签时间段,判断其是否超过预设的时间段阈值,若是,则续签所述token,以实现当前账号的登录状态的自动续约。

请参照图1,本发明提供了一种登录状态自动续约的方法,包括以下步骤:

s1:当网页启动时,获取网页当前账号对应的token;

s2:判断所述token是否有效,若无效,则跳转至网页的登录页面;若有效,则获取所述token的上一次续签时间点,并执行s3;

s3:根据上一次续签时间点和当前时间点,得到续签时间段,判断所述续签时间段是否超过预设的时间段阈值,若是,则续签所述token,以实现当前账号的登录状态的自动续约。

从上述描述可知,本发明提供的一种登录状态自动续约的方法,当网页启动时,获取当前账号对应的token,判断token是否有效,若有效,则获取当前时间点及token的上一次续签时间点,得到续签时间段,判断其是否超过预设的时间段阈值,若是,则续签所述token,以实现当前账号的登录状态的自动续约。本发明具有如下优点:1、相比于网络请求拦截器的方案,其触发时间在于网页发送网络请求后,访问网络前,通过获取token的过期时间,并根据token的过期时间,判断是否需要执行续约操作,而本发明是将自动续约的触发时机,选择在用户进入网页的时,即本发明相对于网络请求拦截器的方案,提前执行自动续约的触发操作,使得网页的处理效率得到了提高,同时本发明步骤简单,执行难度小;2、设置的时间段阈值,只有超过阈值时,才触发自动续约,这是因为一个网站可能被多次刷新(比如从一个页面跳转到另一个页面),如果每次都续约就会有不必要的性能消耗。

名词解释:

token:标记用户登录状态的全局唯一id,比如a用户登录成功后,服务器就会给他一个token,并且保存了这个token的过期时间,超过时间表示用户登录失效(未登录)。

自动续约:也叫状态维持,意思是长时间维持用户的某个状态,本发明中特指用户的登录状态。

进一步的,判断所述token是否有效,具体为:

发送验证所述token是否有效对应的请求至服务器;

接收所述服务器检查所述token是否有效后发送的检查结果,根据所述检查结果,判断所述token是否有效。

从上述描述可知,通过上述方法,能够简单快速地判断token是否有效,提高了数据的处理效率。

进一步的,所述s2具体为:

判断所述token是否有效,若无效,则跳转至网页的登录页面;获取输入的账号及密码,进行登录操作,若登录成功,则缓存当前登录的账号对应的token,并缓存当前时间点作为当前登录的账号对应的token的续签时间点;

若有效,则从缓存中获取当前账号对应的token的上一次续签时间点,并执行s3。

从上述描述可知,通过上述方法,当token已无效时,能够自动跳转对应的登录页面,并缓存token,以便以续自动进行网页登录状态的自动续约。

进一步的,若从缓存中获取当前登录的账号对应的token的上一次续签时间点失败,则续签该token,并缓存当前时间点作为当前登录的账号对应的token的续签时间点。

从上述描述可知,当token从缓存中获取失败时,通过上述方法,能够实现自动token的自动续签。

进一步的,所述s1具体为:

当网页启动时,从缓存中获取网页当前账号对应的token。

进一步的,所述s3具体为:

根据所述第一时间点和当前时间点,得到续签时间段,判断所述续签时间段是否超过预设的时间段阈值,若是,则续签所述token,并缓存当前时间点作为当前登录的账号对应的token的续签时间点。

进一步的,所述的一种登录状态自动续约的方法,还包括:

当接收到退出网页对应的退出指令时,发送当前账号对应的token过期时间至服务器,并删除缓存中token所有的续签时间点。

从上述描述可知,当用户手动退出网页时,删除缓存中token所有的续签时间点,以便能够实现其他账户的登录状态的自动续约。

进一步的,将所有的网页逐一替换为app。

从上述描述可知,通过上述方法,能够实现app中用户登录状态的自动续约。

请参照图2,本发明提供了一种登录状态自动续约的终端,包括存储器1、处理器2及存储在存储器1上并可在处理器2上运行的计算机程序,所述处理器2执行所述计算机程序时实现以下步骤:

s1:当网页启动时,获取网页当前账号对应的token;

s2:判断所述token是否有效,若无效,则跳转至网页的登录页面;若有效,则获取所述token的上一次续签时间点,并执行s3;

s3:根据上一次续签时间点和当前时间点,得到续签时间段,判断所述续签时间段是否超过预设的时间段阈值,若是,则续签所述token,以实现当前账号的登录状态的自动续约。

进一步的,所述的一种登录状态自动续约的终端,判断所述token是否有效,具体为:

发送验证所述token是否有效对应的请求至服务器;

接收所述服务器检查所述token是否有效后发送的检查结果,根据所述检查结果,判断所述token是否有效。

进一步的,所述的一种登录状态自动续约的终端,所述s2具体为:

判断所述token是否有效,若无效,则跳转至网页的登录页面;获取输入的账号及密码,进行登录操作,若登录成功,则缓存当前登录的账号对应的token,并缓存当前时间点作为当前登录的账号对应的token的续签时间点;

若有效,则从缓存中获取当前账号对应的token的上一次续签时间点,并执行s3。

进一步的,所述的一种登录状态自动续约的终端,若从缓存中获取当前登录的账号对应的token的上一次续签时间点失败,则续签该token,并缓存当前时间点作为当前登录的账号对应的token的续签时间点。

进一步的,所述的一种登录状态自动续约的终端,所述s1具体为:

当网页启动时,从缓存中获取网页当前账号对应的token。

进一步的,所述的一种登录状态自动续约的终端,所述s3具体为:

根据所述第一时间点和当前时间点,得到续签时间段,判断所述续签时间段是否超过预设的时间段阈值,若是,则续签所述token,并缓存当前时间点作为当前登录的账号对应的token的续签时间点。

进一步的,所述的一种登录状态自动续约的终端,所述处理器执行所述计算机程序时实现的步骤还包括:

当接收到退出网页对应的退出指令时,发送当前账号对应的token过期时间至服务器,并删除缓存中token所有的续签时间点。

进一步的,所述的一种登录状态自动续约的终端,将所有的网页逐一替换为app。

请参照图1,本发明的实施例一为:

本发明提供了一种登录状态自动续约的方法,包括以下步骤:

s1:当网页启动时,获取网页当前账号对应的token;

其中,所述s1具体为:

当网页启动时,从缓存中获取网页当前账号对应的token。

s2:判断所述token是否有效,若无效,则跳转至网页的登录页面;若有效,则获取所述token的上一次续签时间点,并执行s3;

其中,所述s2具体为:

判断所述token是否有效,若无效,则跳转至网页的登录页面;获取输入的账号及密码,进行登录操作,若登录成功,则缓存当前登录的账号对应的token,并缓存当前时间点作为当前登录的账号对应的token的续签时间点;

若有效,则从缓存中获取当前账号对应的token的上一次续签时间点,并执行s3。

其中,判断所述token是否有效,具体为:

发送验证所述token是否有效对应的请求至服务器;

接收所述服务器检查所述token是否有效后发送的检查结果,根据所述检查结果,判断所述token是否有效。

s3:根据上一次续签时间点和当前时间点,得到续签时间段,判断所述续签时间段是否超过预设的时间段阈值,若是,则续签所述token,以实现当前账号的登录状态的自动续约;

其中,所述s3具体为:

根据所述第一时间点和当前时间点,得到续签时间段,判断所述续签时间段是否超过预设的时间段阈值,若是,则续签所述token,并缓存当前时间点作为当前登录的账号对应的token的续签时间点。

其中,所述时间段阈值为0.1-5天,可根据实际运行情况进行调整;优选的,在安全性和减少系统不必要的性能消耗的综合考虑下,所述时间段阈值为1天。

在执行s1-s3的同时,同步执行步骤:当接收到退出网页对应的退出指令时,发送当前账号对应的token过期时间至服务器,并删除缓存中token所有的续签时间点。

本发明在实际应用中,若从缓存中获取当前登录的账号对应的token的上一次续签时间点失败,则续签该token,并缓存当前时间点作为当前登录的账号对应的token的续签时间点。

本发明的当前时间点,均指在执行相应的操作时,获取系统当前的时间点。

本发明的实施例二为:

本发明的实施例二与实施例一的区别在于,将实施例一中的所有网页均替换为app。

请参照图2,本发明的实施例三为:

本发明提供了一种登录状态自动续约的终端,包括存储器1、处理器2及存储在存储器1上并可在处理器2上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

s1:当网页启动时,获取网页当前账号对应的token;

其中,所述s1具体为:

当网页启动时,从缓存中获取网页当前账号对应的token。

s2:判断所述token是否有效,若无效,则跳转至网页的登录页面;若有效,则获取所述token的上一次续签时间点,并执行s3;

其中,所述s2具体为:

判断所述token是否有效,若无效,则跳转至网页的登录页面;获取输入的账号及密码,进行登录操作,若登录成功,则缓存当前登录的账号对应的token,并缓存当前时间点作为当前登录的账号对应的token的续签时间点;

若有效,则从缓存中获取当前账号对应的token的上一次续签时间点,并执行s3。

其中,判断所述token是否有效,具体为:

发送验证所述token是否有效对应的请求至服务器;

接收所述服务器检查所述token是否有效后发送的检查结果,根据所述检查结果,判断所述token是否有效。

s3:根据上一次续签时间点和当前时间点,得到续签时间段,判断所述续签时间段是否超过预设的时间段阈值,若是,则续签所述token,以实现当前账号的登录状态的自动续约;

其中,所述s3具体为:

根据所述第一时间点和当前时间点,得到续签时间段,判断所述续签时间段是否超过预设的时间段阈值,若是,则续签所述token,并缓存当前时间点作为当前登录的账号对应的token的续签时间点。

其中,所述时间段阈值为0.1-5天,可根据实际运行情况进行调整;优选的,在安全性和减少系统不必要的性能消耗的综合考虑下,所述时间段阈值为1天。

在执行s1-s3的同时,同步执行步骤:当接收到退出网页对应的退出指令时,发送当前账号对应的token过期时间至服务器,并删除缓存中token所有的续签时间点。

本发明在实际应用中,若从缓存中获取当前登录的账号对应的token的上一次续签时间点失败,则续签该token,并缓存当前时间点作为当前登录的账号对应的token的续签时间点。

本发明的当前时间点,均指在执行相应的操作时,获取系统当前的时间点。

本发明的实施例四为:

本发明的实施例四与实施例三的区别在于,将实施例三中的所有网页均替换为app。

请参照图3,本发明的实施例五为:

1、网站(app)启动时,首先从缓存获取当前用户token;

由于token获取来源不属于本专利范围,故不做展开讨论,可以是本地文件、cookie、session等;

2、将当前token发送给服务端,验证token的有效性;

如果token无效,则跳转到自动登录页面,直到登录成功后,执行步骤(3~5)

如果token有效,执行步骤(6~8);

3、将用户token写到缓存;

4、将当前时间作为最近一次自动续约的时间,写到缓存;

5、开始具体的业务逻辑;

6、从缓存获取最近一次自动续约的时间;

7、如果时间小于阈值,开始具体的业务逻辑;

8、如果时间大于阈值,或者缓存读取失败,就进行一次自动续约,续约成功后,将当前时间作为最近一次自动续约的时间写到缓存,并开始具体的业务逻辑。

综上所述,本发明提供的一种登录状态自动续约的方法和终端,当网页启动时,获取当前账号对应的token,判断token是否有效,若有效,则获取当前时间点及token的上一次续签时间点,得到续签时间段,判断其是否超过预设的时间段阈值,若是,则续签所述token,以实现当前账号的登录状态的自动续约。本发明具有如下优点:1、相比于网络请求拦截器的方案,其触发时间在于网页发送网络请求后,访问网络前,通过获取token的过期时间,并根据token的过期时间,判断是否需要执行续约操作,而本发明是将自动续约的触发时机,选择在用户进入网页的时,即本发明相对于网络请求拦截器的方案,提前执行自动续约的触发操作,使得网页的处理效率得到了提高,同时本发明步骤简单,执行难度小;2、设置的时间段阈值,只有超过阈值时,才触发自动续约,这是因为一个网站可能被多次刷新(比如从一个页面跳转到另一个页面),如果每次都续约就会有不必要的性能消耗。

以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

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