本发明涉及网络通讯,尤其是涉及一种网络请求重试方法、装置、电子设备和计算机存储介质。
背景技术:
1、时至今日,4g、5g网络依然会存在网络通信质量不佳造成前端应用的接口请求无法响应的案例。一旦请求失败且又没做后续优化,则必然造成业务的中断。后续优化通常需要安排较为资深的人员解决问题,但对中小企业而言通常无法做到足够的投入,稍有不甚反而会出现异常的业务数据影响正常的业务流程。
2、现有的网络请求是把失败的请求信息缓存到重试队列中,同时对后续的网络请求进行监听。一旦探测到有成功的请求(简称探测请求),就会发送重试队列中的请求,直至把重试队列清空。该方案需对业务有较深的侵入,程序开发难度较高,且如果探测请求恰好也出现在重试队列中则可能出现重复请求,造成网络资源的浪费。同时,用户的等待耐心有限,等到类似方案取回数据时,很可能用户已经关闭了相关应用或页面,使得这些数据失去了原有的价值。
技术实现思路
1、本发明的目的在于提供一种网络请求重试方法、装置、电子设备和计算机存储介质,针对网络超时的请求重复执行多次请求操作,直至请求成功或达到预设的请求次数上限,返回请求结果,低侵入原有业务实现自动请求重试,降低了开发难度,节约了网络资源;确保尽最大可能在用户关闭应用或页面前请求成功,提升用户体验。
2、第一方面,本发明提供了一种网络请求重试方法,应用于前端业务系统,包括:发送请求信息至服务器;接收发送请求信息的回执信息;判断回执信息是否为请求超时;如果回执信息为请求超时,执行重复请求操作,直至达到预设的请求次数上限,返回失败数据;重复请求操作包括:判断当前请求次数是否达到请求次数上限;如果当前请求次数没有达到请求次数上限,发送请求信息至服务器。
3、在本发明一些较佳的实施例中,判断回执信息是否为请求超时的步骤,包括:基于回执信息的数据格式确定前端业务系统对应的网络请求库的种类;如果网络请求库的种类符合预设的目标网络请求库类别,基于网络请求库的种类确定目标字段;遍历目标字段,如果目标字段内包括预设的第一关键字,返回请求超时的回执信息。
4、在本发明一些较佳的实施例中,目标网络请求库的类别包括:uni.request、axios、wx.request和jquery.ajax。
5、在本发明一些较佳的实施例中,基于回执信息的数据格式确定前端业务系统对应的网络请求库的种类的步骤之后,方法还包括:如果网络请求库的种类不符合预设的目标网络请求库类别,将回执信息转化为字符串;通过正则匹配查找字符串中是否包括第一关键字,且,不包括预设的第二关键字,返回请求超时的回执信息。
6、在本发明一些较佳的实施例中,回执信息包括过滤器回调函数;基于回执信息的数据格式确定前端业务系统对应的网络请求库的种类的步骤之前,方法还包括:执行过滤器回调函数;如果过滤器回调函数的结果符合预设的退出条件,退出发送请求信息。
7、在本发明一些较佳的实施例中,在接收发送请求信息的回执信息的步骤之后,方法还包括:如果回执信息为连接成功,返回成功数据。
8、第二方面,本发明提供了一种网络请求重试装置,应用于前端业务系统,包括:请求发送模块,用于发送请求信息至服务器;回执信息接收模块,用于接收发送请求信息的回执信息;回执信息处理模块,用于判断回执信息是否为请求超时;重复请求发送模块,用于如果回执信息为请求超时,执行重复请求操作,直至达到预设的请求次数上限,返回失败数据;重复请求操作包括:判断当前请求次数是否达到请求次数上限;如果当前请求次数没有达到请求次数上限,发送请求信息至服务器。
9、在本发明一些较佳的实施例中,回执信息处理模块,用于基于回执信息的数据格式确定前端业务系统对应的网络请求库的种类;如果网络请求库的种类符合预设的目标网络请求库类别,基于网络请求库的种类确定目标字段;遍历目标字段,如果目标字段内包括预设的第一关键字,返回请求超时的回执信息。
10、第三方面,本发明提供了一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的计算机可执行指令,处理器执行计算机可执行指令以实现上述任一项的网络请求重试方法。
11、第四方面,本发明提供了一种计算机存储介质,计算机存储介质存储有计算机可执行指令,计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现上述任一项的网络请求重试方法。
12、本发明带来了以下有益效果:
13、本发明提供了一种网络请求重试方法、装置、电子设备和计算机存储介质,应用于前端业务系统,包括:发送请求信息至服务器;接收发送请求信息的回执信息;判断回执信息是否为请求超时;如果回执信息为请求超时,执行重复请求操作,直至达到预设的请求次数上限,返回失败数据;重复请求操作包括:判断当前请求次数是否达到请求次数上限;如果当前请求次数没有达到请求次数上限,发送请求信息至服务器;针对网络超时的请求重复执行多次请求操作,直至请求成功或达到预设的请求次数上限,返回请求结果,低侵入原有业务实现自动请求重试,降低了开发难度,节约了网络资源。
1.一种网络请求重试方法,其特征在于,应用于前端业务系统,包括:
2.根据权利要求1所述的网络请求重试方法,其特征在于,判断所述回执信息是否为请求超时的步骤,包括:
3.根据权利要求2所述的网络请求重试方法,其特征在于,所述目标网络请求库的类别包括:uni.request、axios、wx.request和jquery.ajax。
4.根据权利要求2所述的网络请求重试方法,其特征在于,基于所述回执信息的数据格式确定所述前端业务系统对应的网络请求库的种类的步骤之后,所述方法还包括:
5.根据权利要求2所述的网络请求重试方法,其特征在于,所述回执信息包括过滤器回调函数;
6.根据权利要求1所述的网络请求重试方法,其特征在于,在接收发送所述请求信息的回执信息的步骤之后,所述方法还包括:
7.一种网络请求重试装置,其特征在于,应用于前端业务系统,包括:
8.根据权利要求7所述的网络请求重试装置,其特征在于,回执信息处理模块,用于基于所述回执信息的数据格式确定所述前端业务系统对应的网络请求库的种类;如果所述网络请求库的种类符合预设的目标网络请求库类别,基于所述网络请求库的种类确定目标字段;遍历所述目标字段,如果所述目标字段内包括预设的第一关键字,返回请求超时的所述回执信息。
9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机可执行指令,所述处理器执行所述计算机可执行指令以实现上述权利要求1至6任一项所述的网络请求重试方法。
10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机可执行指令,所述计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现权利要求1至6任一项所述的网络请求重试方法。
