CN107682389A - 一种执行网络请求的方法、终端及计算机可读存储介质 - Google Patents
一种执行网络请求的方法、终端及计算机可读存储介质 Download PDFInfo
- Publication number
- CN107682389A CN107682389A CN201710607890.6A CN201710607890A CN107682389A CN 107682389 A CN107682389 A CN 107682389A CN 201710607890 A CN201710607890 A CN 201710607890A CN 107682389 A CN107682389 A CN 107682389A
- Authority
- CN
- China
- Prior art keywords
- request
- network request
- network
- application program
- administrative center
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明实施例提供一种执行网络请求的方法、终端及计算机可读存储介质。所述方法包括:若应用程序启动,创建可执行所述应用程序网络请求的管理中心;若检测到应用程序将要发送网络请求,判断所述网络请求是否为预设类型的网络请求;若所述网络请求为预设类型的网络请求,控制所述应用程序将所述网络请求发送至所述管理中心;所述管理中心控制所述应用程序显示所述网络请求被成功执行后的状态并执行所述网络请求。本发明实施例若检测到应用程序将要发送的网络请求为预设类型的网络请求,管理中心控制应用程序显示网络请求被成功执行后的状态并执行网络请求,节约了用户等待网络请求数据加载的时间,提高了用户的体验。
Description
技术领域
本发明涉及电子终端技术领域,尤其涉及一种执行网络请求的方法、终端及计算机可读存储介质。
背景技术
随着移动互联网的发展,移动端应用程序得到广泛的应用,但体验上良莠不齐。如当应用程序执行一个网络请求并加载网络请求的数据时,会弹出加载的图案,该加载的图像会妨碍用户进一步的操作。如果网络情况不理想,此时因为加载图像的显示,用户不能触摸点击应用程序的页面上的按钮,用户需要等待很长的时间才能加载所有网络请求的数据,才能进行下一步的操作。显然在该种情况下,用户的体验非常不好。
发明内容
本发明实施例提供了一种执行网络请求的方法、终端及计算机可读存储介质,可节约用户等待网络请求数据加载的时间,提高用户的体验。
第一方面,本发明实施例提供了一种执行网络请求的方法,该方法包括:
若应用程序启动,创建可执行所述应用程序网络请求的管理中心;
若检测到应用程序将要发送网络请求,判断所述网络请求是否为预设类型的网络请求;
若所述网络请求为预设类型的网络请求,控制所述应用程序将所述网络请求发送至所述管理中心;
所述管理中心控制所述应用程序显示所述网络请求被成功执行后的状态并执行所述网络请求。
第二方面,本发明实施例提供了一种终端,该终端包括:
创建单元,用于若应用程序启动,创建可执行所述应用程序网络请求的管理中心;
判断单元,用于若检测到应用程序将要发送网络请求,判断所述网络请求是否为预设类型的网络请求;
控制发送单元,用于若所述网络请求为预设类型的网络请求,控制所述应用程序将所述网络请求发送至所述管理中心;
所述管理中心,用于控制所述应用程序显示所述网络请求被成功执行后的状态并执行所述网络请求。
第三方面,本发明实施例提供了另一种终端,该终端包括:存储器和处理器;所述存储器存储有可执行的程序数据;所述处理器用于运行所述存储器中存储的所述程序数据,以执行上述第一方面的方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者一个以上程序数据,所述一个或者一个以上程序数据可被一个或者一个以上的处理器执行,以实现上述第一方面所述的方法。
本发明实施例当应用程序启动时,创建应用程序的管理中心,若检测到应用程序将要发送网络请求,判断是否为预设类型的网络请求,若是,管理中心控制应用程序显示网络请求被成功执行后的状态并执行网络请求,节约了用户等待网络请求数据加载的时间,提高了用户的体验。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种执行网络请求的方法的示意流程图;
图2是本发明实施例提供的一种执行网络请求的方法的子方法示意流程图;
图3是本发明实施例提供的一种执行网络请求的方法的另一子方法示意流程图;
图4是本发明实施例提供的一种终端的示意性框图;
图5是本发明实施例提供的管理中心的示意性框图;
图6是本发明另一实施例提供的管理中心的示意性框图;
图7是本发明另一实施例提供的管理中心的示意性框图;
图8是本发明实施例提供的另一种终端的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
具体实现中,本发明实施例中描述的终端包括但不限于可以执行应用程序的诸如移动电话、膝上型计算机或平板计算机之类的其它便携式终端。还应当理解的是,在某些实施例中,所述终端并非便携式通信终端,还包括可以执行应用程序的台式计算机、电视等。终端可以安装并执行各种应用程序。
图1为本发明实施例提供的一种执行网络请求的方法的流程示意图。该方法包括S101~S103。
S101,若应用程序启动,创建可执行应用程序网络请求的管理中心。其中,管理中心是在应用程序的本地后台创建的,管理中心为应用程序的一部分。创建管理中心包括,开辟存储空间,配置并保存一些参数等。每次应用程序启动,就创建该管理中心。每次应用程序关闭,就销毁该管理中心,以确保在应用程序没有启动的情况下,该管理中心没有销毁而占用终端资源。在管理中心可以配置并保存执行网络请求的相关参数,如预设数量、预设时间、预设次数等。
S102,若检测到应用程序将要发送网络请求,判断该网络请求是否为预设类型的网络请求。其中,网络请求包括很多参数,如发送的接口、发送的数据量、使用的协议、目的地址、网络请求数据的类型等,还有一些其他的参数,如网络请求的优先级等。根据网络请求的参数判断该网络请求是否为预设类型的网络请求,其中,预设类型的网络请求是指非实时性的或者对实时性要求不高,并且不需要很快与其他终端如服务器有进一步交互的网络请求。如对于微信应用程序,网络请求可以为发送一条朋友圈、为微信好友发送的朋友圈消息点赞、评论朋友圈的消息、收藏消息或者微信打开的页面、修改微信个人资料等。
S103,若该网络请求为预设类型的网络请求,控制应用程序将该网络请求发送至管理中心。控制应用程序将该网络请求发送至管理中心以在管理中心保存该网络请求,并获取管理中心为该网络请求分配的唯一标识符。若该网络请求不为预设类型的网络请求,将网络请求发送至服务器。
S104,管理中心控制应用程序显示该网络请求被成功执行后的状态并执行该网络请求。如微信应用程序,若网络请求为微信好友发送的朋友圈消息点赞,管理中心控制应用程序显示点赞成功的状态,并执行为微信好友发送的朋友圈点赞的网络请求。可以理解为,该网络请求并没有被真正执行,先显示该网络请求被成功执行后的状态;接着管理中心去执行该网络请求。如此,用户在网络情况不是很好的情况下,不必等待该网络请求真正被成功执行,用户可以获得更多的时间进行下一步其他的操作,提高了用户的体验。
上述实施例当应用程序启动时,创建应用程序的管理中心,若检测到应用程序将要发送网络请求,判断是否为预设类型的网络请求,若是,管理中心控制应用程序显示网络请求被成功执行后的状态并执行网络请求,节约了用户等待网络请求数据加载的时间,提高了用户的体验。
具体地,如图2所示,S104包括S201-S207,以进一步限定管理中心如何控制应用程序显示该网络请求被成功执行后的状态并执行该网络请求。其中,在管理中心中可以配置并保存网络请求的相关参数,包括预设时间、预设次数、暂缓等待时间等。其中,预设时间可理解为一个请求实例执行一次的时间,一个请求实例执行一次可只发送一次网络请求,也可发送多次的网络请求;预设次数可理解为自动执行网络请求的次数。
S201,创建该网络请求的请求实例以控制应用程序显示该网络请求被成功执行后的状态。在一些实施例中,在该网络请求的请求实例中包括该请求实例的优先级,以及该请求实例对应的预设时间、该请求实例对应的预设次数、该请求实例对应的暂缓等待时间等。对于同一个应用程序,对于不同优先级的请求实例可以设置不同的预设时间、预设次数、暂缓等待时间。如若请求实例对应的数据量大,比如上传多张图片等,那么请求实例对应的预设时间、预设次数等值就会大一些。在实际执行中,若该网络请求的请求实例中有预设时间、预设次数、暂缓等待时间等相关参数,那么以该请求实例中的相关参数为准,如获取该请求实例中的优先级、该请求实例对应的预设时间、预设次数、暂缓等待时间等。若该网络请求的请求实例中没有相关参数,那么以管理中心配置的网络请求的相关参数为准。其中,请求实例的优先级可根据应用程序的功能来确定。如在同一个网页中有5个不同的请求,根据应用程序的功能,如该应用程序主要是展示图像的,那么请求展示图像的请求实例对应的优先级高于请求数据的请求实例对应的优先级。在其他实施例中,对于同一个应用程序,对于不同优先级的请求实例也可以设置相同的预设时间、预设次数、暂缓等待时间等。在其他实施例中,对于不同的应用程序,请求实例对应的预设时间、预设次数等也可以相同,也可以不同。若该网络请求的请求实例创建成功,控制应用程序显示该网络请求被成功执行后的状态。如对于微信应用程序,若网络请求为微信好友发送的朋友圈点赞,若该网络请求的请求实例创建成功,那么请求实例创建成功的回调函数会让应用程序的前端显示该网络请求被成功执行后的状态,即点赞成功的状态。
S202,判断正在执行的网络请求的数量是否达到预设数量。管理中心能同时执行多个网络请求,判断正在执行的网络请求的数量是否达到预设数量,若达到预设数量,执行S203;若没有达到预设数量,执行S204。若当前没有执行网络请求,那么正在执行的网络请求的数量为零。管理中心能同时执行多个网络请求,能最大限度的利用网络资源,提高执行网络请求的效率。
S203,根据该请求实例的优先级将该请求实例放入对应的等待队列里等待执行。将请求实例分为不同的优先级,优先执行优先级高的对应的等待队列里的请求实例,以提高用户的体验。接着执行S202,以判断是否可以执行该请求实例,如在等待的过程中,若有请求实例成功执行,正在执行的网络请求的数量未达到预设数量,即可取出等待队列里面的请求实例来执行网络请求。
S204,根据该请求实例执行网络请求。
S205,判断网络请求是否执行成功。若网络请求执行成功,执行S206;否则,执行S207。
S206,删除该请求实例。
S207,再次根据该请求实例执行网络请求。若网络请求未执行成功,接着再次根据该请求实例执行网络请求。再判断网络请求是否执行成功。
在其他实施例中,根据请求实例执行网络请求的次数不做具体限定,如三次等。
上述实施例在管理中心执行网络请求时,若管理中心正在执行的网络请求的数量达到预设数量,根据请求实例的优先级将该请求实例放入对应的等待队列里等待执行,若未达到预设数量,根据该请求实例执行网络请求;判断网络请求是否执行成功,若执行成功,删除该请求实例,若未执行成功,再次根据该请求实例执行网络请求。上述实施例可以根据请求实例的优先级来执行网络请求,以优先处理更为重要的网络请求,提升用户体验;而且,多个网络请求同时执行,最大限度利用网络资源,提高执行网络请求的效率;此外,若网络请求未执行成功,自动重新根据请求实例执行网络请求,自动多次执行网络请求,既保证网络请求能够执行成功又无需用户点击重新执行,提升用户体验。
图3为管理中心多次根据请求实例执行网络请求仍未成功后的方法步骤流程图,其中,该处的多次不超过预设次数,且与图2实施例的执行网络请求的次数相关联。若图2实施例执行网络请求的次数为两次,那么该处的多次即指两次;若图2实施例执行网络请求的次数为三次,那么该处的多次即指三次。优选地,图2实施例执行网络请求的次数为两次,该处的多次指两次。优选地,预设次数为五次。如图3所示,管理中心多次根据该请求实例执行网络请求仍未成功后的步骤包括S301-S310。
S301,若多次未成功执行网络请求,判断根据该请求实例执行网络请求的次数是否达到预设次数。若未达到预设次数,执行S302;若达到预设次数,执行S307。
S302,根据将该请求实例的优先级将该请求实例放入对应的暂缓队列。将请求实例放入对应的暂缓队列,以间隔暂缓等待时间后继续根据请求实例执行网络请求,提高执行网络请求成功的几率。
S303,判断是否达到暂缓等待时间。若达到暂缓等待时间,执行S304;若未达到暂缓等待时间,继续判断是否达到暂缓等待时间。
S304,从暂缓队列中取出该请求实例并根据该请求实例执行网络请求。
S305,判断网络请求是否执行成功。若网络请求执行成功,执行S306;若未执行成功,执行S301。
S306,删除该请求实例。
S307,销毁该请求实例,并获取网络请求未执行成功的原因。若根据请求实例执行网络请求的次数达到预设次数,销毁该请求实例并获取网络请求未成功执行的原因,优选为返回最后一次执行网络请求失败的原因。其中,原因包括找不到接口、找不到页面、网络中断等。
S308,根据该原因判断是否需重新创建一个与该请求实例完全相同的请求实例。若需重新创建,执行S310;若无需重新创建,执行S309。如若网络请求未成功执行的原因为找不到接口、找不到页面等,那么无需重新创建一个与该请求实例完全相同的请求实例。若该原因为网络中断等,那么需重新创建一个与该请求实例完全相同的请求实例。
S309,控制应用程序显示该网络请求被成功执行之前的状态。若无需重新创建一个与该请求实例完全相同的请求实例,根据唯一标识符控制应用程序显示该网络请求被成功执行之前的状态,即撤销显示执行该网络请求成功后的状态。
S310,创建网络请求的请求实例。若需重新创建一个与该请求实例完全相同的请求实例,则创建网络请求的请求实例,以给该网络请求更多的请求次数,提高网络请求执行成功的几率。创建完成后,返回执行S202,即判断能同时执行网络请求的数量是否达到预设数量的步骤。
上述实施例在多次未成功执行网络请求后,判断根据请求实例执行网络请求的次数是否达到预设次数,若未达到预设次数,暂缓执行该网络请求,间隔暂缓等待时间之后继续根据请求实例执行网络请求,以提高网络请求执行成功的几率;若达到预设次数,即在预设次数内都执行失败,获取该网络请求未成功执行的原因。根据原因判断否需重新创建一个与该请求实例完全相同的请求实例,若需重新创建,创建网络请求的请求实例,以给该网络请求更多的请求机会,提高网络请求执行成功的几率;若无需重新创建,撤销显示的执行该网络请求成功后的状态。
图4为本发明实施例提供的一种终端的示意性框图。该终端40包括创建单元401、判断单元402、控制发送单元403、管理中心404。
创建单元401用于若应用程序启动,创建可执行应用程序网络请求的管理中心。其中,管理中心是在应用程序的本地后台创建的,管理中心为应用程序的一部分。创建管理中心包括,开辟存储空间,配置并保存一些参数等。每次应用程序启动,就创建该管理中心。每次应用程序关闭,就销毁该管理中心,以确保在应用程序没有启动的情况下,该管理中心没有销毁而占用终端资源。在管理中心可以配置并保存执行网络请求的相关参数,如预设数量、预设时间、预设次数等。
判断单元402用于若检测到应用程序将要发送网络请求,判断该网络请求是否为预设类型的网络请求。其中,网络请求包括很多参数,如发送的接口、发送的数据量、使用的协议、目的地址等,还有一些其他的参数,如网络请求的优先级等。根据网络请求的参数判断该网络请求是否为预设类型的网络请求,其中,预设类型的网络请求是指非实时性的或者对实时性要求不高,并且不需要很快与其他终端如服务器有进一步交互的网络请求。如对于微信应用程序,网络请求可以为发送一条朋友圈、为微信好友发送的朋友圈消息点赞、评论朋友圈的消息、收藏消息或者微信打开的页面、修改微信个人资料等。
控制发送单元403用于若该网络请求为预设类型的网络请求,控制应用程序将该网络请求发送至管理中心。控制应用程序将该网络请求发送至管理中心以在管理中心保存该网络请求,并获取管理中心为该网络请求分配的唯一标识符。
管理中心404用于控制应用程序显示该网络请求被成功执行后的状态并执行该网络请求。如微信应用程序,若网络请求为微信好友发送的朋友圈消息点赞,管理中心控制应用程序显示点赞成功的状态,并执行为微信好友发送的朋友圈点赞的网络请求。可以理解为,该网络请求并没有被真正执行,先显示该网络请求被成功执行后的状态;接着管理中心去执行该网络请求。如此,用户在网络情况不是很好的情况下,不必等待该网络请求真正被成功执行,用户可以获得更多的时间进行下一步其他的操作,提高了用户的体验。
上述实施例当应用程序启动时,创建应用程序的管理中心,若检测到应用程序将要发送网络请求,判断是否为预设类型的网络请求,若是,管理中心控制应用程序显示网络请求被成功执行后的状态并执行网络请求,节约了用户等待网络请求数据加载的时间,提高了用户的体验。
图5为管理中心的示意性框图,该管理中心限定了如何控制应用程序显示该网络请求被成功执行后的状态并执行该网络请求。如图5所示,管理中心50包括请求实例创建单元501、控制判断单元502、等待单元503、请求执行单元504、删除单元505、存储单元506。其中,存储单元506用于保存请求实例、以及保存配置的网络请求的相关参数等,网络请求的相关参数包括预设时间、预设次数、暂缓等待时间等。其中,预设时间可理解为一个请求实例执行一次的时间,一个请求实例执行一次可只发送一次网络请求,也可发送多次的网络请求;预设次数可理解为自动执行网络请求的次数。
请求实例创建单元501用于管理中心创建该网络请求的请求实例以控制应用程序显示该网络请求被成功执行后的状态。在一些实施例中,在该网络请求的请求实例中包括该请求实例的优先级,以及该请求实例对应的预设时间、该请求实例对应的预设次数、该请求实例对应的暂缓等待时间等。对于同一个应用程序,对于不同优先级的请求实例可以设置不同的预设时间、预设次数、暂缓等待时间。如若请求实例对应的数据量大,比如上传多张图片等,那么请求实例对应的预设时间、预设次数等值就会大一些。在实际执行中,若该网络请求的请求实例中有预设时间、预设次数、暂缓等待时间等相关参数,那么以该请求实例中的相关参数为准,如获取该请求实例中的优先级、该请求实例对应的预设时间、预设次数、暂缓等待时间等。若该网络请求的请求实例中没有相关参数,那么以管理中心配置的网络请求的相关参数为准。其中,请求实例的优先级可根据应用程序的功能来确定。如在同一个网页中有5个不同的请求,根据应用程序的功能,如该应用程序主要是展示图像的,那么请求展示图像的请求实例对应的优先级高于请求数据的请求实例对应的优先级。在其他实施例中,对于同一个应用程序,对于不同优先级的请求实例也可以设置相同的预设时间、预设次数、暂缓等待时间等。在其他实施例中,对于不同的应用程序,请求实例对应的预设时间、预设次数等也可以相同,也可以不同。若该网络请求的请求实例创建成功,控制应用程序显示该网络请求被成功执行后的状态。如对于微信应用程序,若网络请求为微信好友发送的朋友圈点赞,若该网络请求的请求实例创建成功,那么回调函数会让应用程序的前端显示该网络请求被成功执行后的状态,即点赞成功的状态。
控制判断单元502用于判断正在执行的网络请求的数量是否达到预设数量。管理中心能同时执行多个网络请求,判断正在执行的网络请求的数量是否达到预设数量。若当前没有执行网络请求,那么正在执行的网络请求的数量为零。管理中心能同时执行多个网络请求,能最大限度的利用网络资源,提高执行网络请求的效率。
等待单元503用于若正在执行的网络请求的数量达到预设数量,根据该请求实例的优先级将该请求实例放入对应的等待队列里等待执行。将请求实例分为不同的优先级,优先执行优先级高的对应的等待队列里的请求实例,以提高用户的体验。接着触发控制判断单元,以判断是否可以执行该请求实例,如在等待的过程中,若有请求实例成功执行,正在执行的网络请求的数量未达到预设数量,即可取出等待队列里面的请求实例来执行网络请求。
请求执行单元504用于若正在执行的网络请求的数量没有达到预设数量,根据该请求实例执行网络请求。另外,若在等待的过程中,若有请求实例成功执行,管理中心能同时执行网络请求的数量没有达到预设数量,即可取出等待队列里面的请求实例来执行网络请求。
控制判断单元502还用于判断网络请求是否执行成功。
删除单元505用于若网络请求执行成功,删除该请求实例。
请求执行单元504还用于若网络请求执行失败,再次根据该请求实例执行网络请求。若该请求实例未执行成功,再次根据该请求实例执行网络请求。接着触发判断单元,以判断网络请求是否执行成功。
上述实施例在管理中心执行网络请求时,若管理中心正在执行的网络请求的数量达到预设数量,根据请求实例的优先级将该请求实例放入对应的等待队列里等待执行,若未达到预设数量,根据该请求实例执行网络请求;判断网络请求是否执行成功,若执行成功,删除该请求实例,若未执行成功,再次根据该请求实例执行网络请求。上述实施例可以根据请求实例的优先级来执行网络请求,以优先处理更为重要的网络请求,提升用户体验;而且,多个网络请求同时执行,最大限度利用网络资源,提高执行网络请求的效率;此外,若网络请求未执行成功,自动重新根据请求实例执行网络请求,自动多次执行,既保证网络请求能够执行成功又无需用户点击重新执行,提升用户体验。
图6为本发明另一实施例提供的管理中心的示意性框图。该管理中心60包括请求实例创建单元601、控制判断单元602、等待单元603、请求执行单元604、删除单元605、存储单元606、暂缓单元607。该管理中心60与图5实施例中的管理中心50的主要区别在于:增加了暂缓单元607。其中,请求实例创建单元601、控制判断单元602、等待单元603、请求执行单元604、删除单元605、存储单元606请参看图5实施例的描述,在此不再赘述。该实施例与图5实施例的区别在于:
控制判断单元602还用于若多次未成功执行网络请求,判断根据该请求实例执行网络请求的次数是否达到预设次数。其中,该处的多次不超过预设次数,且与图2实施例的执行网络请求的次数相关联。若图2实施例执行网络请求的次数为两次,那么该处的多次即指两次;若图2实施例执行网络请求的次数为三次,那么该处的多次即指三次。优选地,图2实施例执行网络请求的次数为两次,该处的多次指两次。
暂缓单元607用于若根据请求实例执行网络请求的次数未达到预设次数,根据该请求实例的优先级将该请求实例放入对应的暂缓队列。将请求实例放入对应的暂缓队列,以间隔暂缓等待时间后继续根据请求实例执行网络请求,提高执行网络请求成功的几率。
控制判断单元602还用于判断是否达到暂缓等待时间。
暂缓单元607还用于若达到暂缓等待时间,从暂缓队列中取出该请求实例并根据该请求实例执行网络请求。接着触发判断单元,以判断网络请求是否执行成功。
删除单元605还用于若网络请求执行成功,删除该请求实例。若网络请求未执行成功,接着触发判断单元,以判断网络请求执行的次数是否达到预设次数。
图7为本发明另一实施例提供的管理中心的示意性框图。该管理中心70包括请求实例创建单元701、控制判断单元702、等待单元703、请求执行单元704、删除单元705、存储单元706、暂缓单元707、销毁单元708、还原单元709。该管理中心70与图6实施例中的管理中心60的主要区别在于:增加了销毁单元708、还原单元709。其中,请求实例创建单元701、控制判断单元702、等待单元703、请求执行单元704、删除单元705、存储单元706、暂缓单元707请参看图6实施例的描述,在此不再赘述。该实施例与图6实施例的区别在于:
销毁单元708用于若根据请求实例执行网络请求的次数达到预设次数,销毁该请求实例,并获取网络请求未成功执行的原因。优选为返回最后一次执行网络请求失败的原因。其中,原因包括找不到接口、找不到页面、网络中断等。
执行判断单元702还用于根据该原因判断是否需重新创建一个与该请求实例完全相同的请求实例。如若该原因为找不到接口、找不到页面等,那么无需重新创建一个与该请求实例完全相同的请求实例。若该原因为网络中断等,那么需重新创建一个与该请求实例完全相同的请求实例。
还原单元709用于若无需重新创建一个与该请求实例完全相同的请求实例,控制应用程序显示该网络请求被成功执行之前的状态。根据唯一标识符控制应用程序显示执行该网络请求成功之前的状态,即撤销显示执行该网络请求成功后的状态。
请求实例创建单元701还用于若需重新创建一个与该请求实例完全相同的请求实例,创建网络请求的请求实例。再次创建网络请求的请求实例,以给该网络请求更多的请求次数,提高网络请求执行成功的几率。创建完成后,接着触发判断单元,以判断正在执行的网络请求的数量是否达到预设数量。
图8为本发明实施例提供的另一种终端的示意性框图。该终端80包括包括一个或多个输入装置801;一个或多个输出装置802,一个或多个存储器803和一个或多个处理器804。上述输入装置801、输出装置802、存储器803和处理器804通过总线805连接。其中:
输入装置801用于提供用户发送网络请求、提供用户再次发送创建网络请求的请求实例的请求。具体实现中,本发明实施例的输入装置801可包括键盘、鼠标、光电输入装置、声音输入装置、触摸式输入装置等。
输出装置802用于显示执行网络请求成功后的状态、网络请求未成功执行的原因等。具体实现中,本发明实施例的输出装置802可包括显示器、显示屏、触摸屏、声音输出装置等。
存储器803用于存储实现执行网络请求的程序数据。其中,包括网络请求、请求实例、请求实例的优先级、预设时间、预设数量、预设次数、暂缓等待时间、暂缓队列、等待队列、同时执行网络请求的个数等,以及可调用并运行的程序。具体实现中,本发明实施例的存储器803可以是系统存储器,比如,挥发性的(诸如RAM),非易失性的(诸如ROM,闪存等),或者两者的结合。具体实现中,本发明实施例的存储器803还可以是系统之外的外部存储器,比如,磁盘、光盘、磁带等。
处理器804用于运行存储器803中存储的程序数据,以执行如下操作:
若应用程序启动,创建可执行所述应用程序网络请求的管理中心;若检测到应用程序将要发送网络请求,判断所述网络请求是否为预设类型的网络请求;若所述网络请求为预设类型的网络请求,控制所述应用程序将所述网络请求发送至所述管理中心;所述管理中心控制所述应用程序显示所述网络请求被成功执行后的状态并执行所述网络请求。
处理器804还执行如下操作:
创建所述网络请求的请求实例以控制应用程序显示所述网络请求被成功执行后的状态;判断正在执行的网络请求的数量是否达到预设数量;若未达到预设数量,根据所述请求实例执行网络请求;判断网络请求是否执行成功;若网络请求执行成功,删除所述请求实例;若网络请求在预设时间内未执行成功,再次根据所述请求实例执行网络请求。
处理器804还执行如下操作:
判断根据所述请求实例执行网络请求的次数是否达到预设次数;若根据所述请求实例执行网络请求的次数未达到预设次数,将所述请求实例放入暂缓队列;判断是否达到暂缓等待时间;若达到暂缓等待时间,从所述暂缓队列中取出所述请求实例并根据所述请求实例执行网络请求。
处理器804还执行如下操作:
若根据所述请求实例执行网络请求的次数达到预设次数,销毁所述请求实例,并获取网络请求未成功执行的原因;根据所述原因判断是否需重新创建一个与所述请求实例完全相同的请求实例;若无需重新创建,控制应用程序显示所述网络请求被成功执行之前的状态;若需重新创建,则创建请求实例且返回所述判断正在执行的网络请求的数量是否达到预设数量的步骤。
处理器804,还执行如下操作:
若所述管理中心正在执行的网络请求的数量超过预设数量,根据所述请求实例的优先级将所述请求实例放入等待队列里等待执行;若根据所述请求实例执行网络请求的次数未达到预设次数,将所述请求实例放入暂缓队列,包括:若根据所述请求实例执行网络请求的次数未达到预设次数,根据所述请求实例的优先级将所述请求实例放入对应的暂缓队列。
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者一个以上的程序数据,所述一个或者一个以上的程序数据可被一个或者一个以上的处理器执行,以实现以下步骤:
若应用程序启动,创建可执行所述应用程序网络请求的管理中心;若检测到应用程序将要发送网络请求,判断所述网络请求是否为预设类型的网络请求;若所述网络请求为预设类型的网络请求,控制所述应用程序将所述网络请求发送至所述管理中心;所述管理中心控制所述应用程序显示所述网络请求被成功执行后的状态并执行所述网络请求。
优选地,所述步骤还包括:
创建所述网络请求的请求实例以控制应用程序显示所述网络请求被成功执行后的状态;判断正在执行的网络请求的数量是否达到预设数量;若未达到预设数量,根据所述请求实例执行网络请求;判断网络请求是否执行成功;若网络请求执行成功,删除所述请求实例;若网络请求在预设时间内未执行成功,再次根据所述请求实例执行网络请求。
优选地,所述步骤还包括:
判断根据所述请求实例执行网络请求的次数是否达到预设次数;若根据所述请求实例执行网络请求的次数未达到预设次数,将所述请求实例放入暂缓队列;判断是否达到暂缓等待时间;若达到暂缓等待时间,从所述暂缓队列中取出所述请求实例并根据所述请求实例执行网络请求。
优选地,所述步骤还包括:
若根据所述请求实例执行网络请求的次数达到预设次数,销毁所述请求实例,并获取网络请求未成功执行的原因;根据所述原因判断是否需重新创建一个与所述请求实例完全相同的请求实例;若无需重新创建,控制应用程序显示所述网络请求被成功执行之前的状态;若需重新创建,则创建请求实例,且返回所述判断正在执行的网络请求的数量是否达到预设数量的步骤。
优选地,所述步骤还包括:
若所述管理中心正在执行的网络请求的数量超过预设数量,根据所述请求实例的优先级将所述请求实例放入等待队列里等待执行;若根据所述请求实例执行网络请求的次数未达到预设次数,将所述请求实例放入暂缓队列,包括:若根据所述请求实例执行网络请求的次数未达到预设次数,根据所述请求实例的优先级将所述请求实例放入对应的暂缓队列。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的终端和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的终端和方法,可以通过其它的方式实现。例如,以上所描述的终端实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、终端或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccess Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种执行网络请求的方法,其特征在于,所述方法包括:
若应用程序启动,创建可执行所述应用程序网络请求的管理中心;
若检测到应用程序将要发送网络请求,判断所述网络请求是否为预设类型的网络请求;
若所述网络请求为预设类型的网络请求,控制所述应用程序将所述网络请求发送至所述管理中心;
所述管理中心控制所述应用程序显示所述网络请求被成功执行后的状态并执行所述网络请求。
2.如权利要求1所述的方法,其特征在于,所述管理中心控制所述应用程序显示所述网络请求被成功执行后的状态并执行所述网络请求,包括:
创建所述网络请求的请求实例以控制应用程序显示所述网络请求被成功执行后的状态;
判断正在执行的网络请求的数量是否达到预设数量;
若未达到预设数量,根据所述请求实例执行网络请求;
判断网络请求是否执行成功;
若网络请求执行成功,删除所述请求实例;
若网络请求在预设时间内未执行成功,再次根据所述请求实例执行网络请求。
3.如权利要求2所述的方法,其特征在于,所述方法还包括:
若网络请求未执行成功,判断根据所述请求实例执行网络请求的次数是否达到预设次数;
若根据所述请求实例执行网络请求的次数未达到预设次数,将所述请求实例放入暂缓队列;
判断是否达到暂缓等待时间;
若达到暂缓等待时间,从所述暂缓队列中取出所述请求实例并根据所述请求实例执行网络请求。
4.如权利要求3所述的方法,其特征在于,所述方法还包括:
若根据所述请求实例执行网络请求的次数达到预设次数,销毁所述请求实例,并获取网络请求未执行成功的原因;
根据所述原因判断是否需重新创建一个与所述请求实例完全相同的请求实例;
若无需重新创建,控制所述应用程序显示所述网络请求被成功执行之前的状态;
若需要重新创建,则创建请求实例;且返回所述判断正在执行的网络请求的数量是否达到预设数量的步骤。
5.如权利要求3所述的方法,其特征在于,所述请求实例包括优先级,所述方法还包括:
若所述管理中心正在执行的网络请求的数量超过预设数量,根据所述请求实例的优先级将所述请求实例放入等待队列里等待执行;
若根据所述请求实例执行网络请求的次数未达到预设次数,将所述请求实例放入暂缓队列,包括:若根据所述请求实例执行网络请求的次数未达到预设次数,根据所述请求实例的优先级将所述请求实例放入对应的暂缓队列。
6.一种终端,其特征在于,所述终端包括:
创建单元,用于若应用程序启动,创建可执行所述应用程序网络请求的管理中心;
判断单元,用于若检测到应用程序将要发送网络请求,判断所述网络请求是否为预设类型的网络请求;
控制发送单元,用于若所述网络请求为预设类型的网络请求,控制所述应用程序将所述网络请求发送至所述管理中心;
所述管理中心,用于控制所述应用程序显示所述网络请求被成功执行后的状态并执行所述网络请求。
7.如权利要求6所述的终端,其特征在于,所述管理中心包括请求实例创建单元、控制判断单元、请求执行单元、删除单元、存储单元;其中,
所述请求实例创建单元用于创建所述网络请求的请求实例以控制应用程序显示所述网络请求被成功执行后的状态;
所述控制判断单元用于判断正在执行的网络请求的数量是否达到预设数量;
所述请求执行单元用于若正在执行的网络请求的数量未达到预设数量,根据所述请求实例执行网络请求;
所述控制判断单元还用于判断网络请求是否执行成功;
所述删除单元用于若网络请求执行成功,删除所述请求实例;
所述请求执行单元用于若网络请求在预设时间内未执行成功,再次根据所述请求实例执行网络请求;
所述存储单元,用于存储请求实例以及网络请求的相关参数,其中,所述相关参数包括预设数量。
8.如权利要求7所述的终端,其特征在于,所述管理中心还包括暂缓单元,所述相关参数还包括预设次数、暂缓等待时间:
所述控制判断单元还用于判断根据所述请求实例执行网络请求的次数是否达到预设次数;
所述暂缓单元用于若根据所述请求实例执行网络请求的次数未达到预设次数,将所述请求实例放入暂缓队列;
所述控制判断单元还用于判断是否达到暂缓等待时间;
所述暂缓单元还用于若达到暂缓等待时间,从所述暂缓队列中取出所述请求实例并根据所述请求实例执行网络请求。
9.一种终端,其特征在于,所述终端包括:存储器和处理器;所述存储器存储有实现执行网络请求的程序数据;所述处理器用于运行所述存储器中存储的所述程序数据,以执行如权利要求1至5任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者一个以上程序数据,所述一个或者一个以上程序数据可被一个或者一个以上的处理器执行,以实现如权利要求1至5任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710607890.6A CN107682389B (zh) | 2017-07-24 | 2017-07-24 | 一种执行网络请求的方法、终端及计算机可读存储介质 |
PCT/CN2017/099547 WO2019019249A1 (zh) | 2017-07-24 | 2017-08-30 | 执行网络请求的方法、装置、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710607890.6A CN107682389B (zh) | 2017-07-24 | 2017-07-24 | 一种执行网络请求的方法、终端及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107682389A true CN107682389A (zh) | 2018-02-09 |
CN107682389B CN107682389B (zh) | 2020-02-14 |
Family
ID=61133081
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710607890.6A Active CN107682389B (zh) | 2017-07-24 | 2017-07-24 | 一种执行网络请求的方法、终端及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107682389B (zh) |
WO (1) | WO2019019249A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111629056A (zh) * | 2020-05-27 | 2020-09-04 | 浙江百世技术有限公司 | 一种网络请求处理方法及应用 |
CN112231604A (zh) * | 2020-06-12 | 2021-01-15 | 北京沃东天骏信息技术有限公司 | 一种页面显示方法、装置、电子设备和存储介质 |
CN112269710A (zh) * | 2020-09-18 | 2021-01-26 | 天地互联科技(广州)有限公司 | 机载监控系统和其监控方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111158871B (zh) * | 2019-12-05 | 2024-02-23 | 智七网络科技(上海)有限公司 | 数据包并发请求处理方法、装置、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080166051A1 (en) * | 2006-10-24 | 2008-07-10 | Masaru Miyamoto | Database Production Method, Database Production Program, Database Production Apparatus and Image Content Recording Apparatus |
CN101621458A (zh) * | 2008-06-30 | 2010-01-06 | 国际商业机器公司 | 异步处理网络请求的方法和系统 |
CN102750291A (zh) * | 2011-04-21 | 2012-10-24 | 中国移动通信集团安徽有限公司 | 用户定制分析装置、通讯终端及其访问互联网方法和系统 |
CN103491162A (zh) * | 2013-09-18 | 2014-01-01 | 广州华多网络科技有限公司 | 基于移动互联网的信息分享方法及系统 |
CN105099989A (zh) * | 2014-04-24 | 2015-11-25 | 阿里巴巴集团控股有限公司 | 用于处理业务请求及获取业务处理结果的方法、装置和系统 |
CN106775901A (zh) * | 2017-01-22 | 2017-05-31 | 上海卓悠网络科技有限公司 | 一种数据预加载方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102508716B (zh) * | 2011-09-29 | 2015-04-15 | 用友软件股份有限公司 | 任务控制装置和任务控制方法 |
CN104166590A (zh) * | 2013-05-20 | 2014-11-26 | 阿里巴巴集团控股有限公司 | 一种实现任务调度的方法及系统 |
CN105490956A (zh) * | 2015-12-07 | 2016-04-13 | 方正移动传媒技术(北京)有限公司 | 一种网络请求处理方法及装置 |
CN106790453B (zh) * | 2016-12-07 | 2019-08-02 | 竞技世界(北京)网络技术有限公司 | 一种操作请求的执行方法及装置 |
-
2017
- 2017-07-24 CN CN201710607890.6A patent/CN107682389B/zh active Active
- 2017-08-30 WO PCT/CN2017/099547 patent/WO2019019249A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080166051A1 (en) * | 2006-10-24 | 2008-07-10 | Masaru Miyamoto | Database Production Method, Database Production Program, Database Production Apparatus and Image Content Recording Apparatus |
CN101621458A (zh) * | 2008-06-30 | 2010-01-06 | 国际商业机器公司 | 异步处理网络请求的方法和系统 |
CN102750291A (zh) * | 2011-04-21 | 2012-10-24 | 中国移动通信集团安徽有限公司 | 用户定制分析装置、通讯终端及其访问互联网方法和系统 |
CN103491162A (zh) * | 2013-09-18 | 2014-01-01 | 广州华多网络科技有限公司 | 基于移动互联网的信息分享方法及系统 |
CN105099989A (zh) * | 2014-04-24 | 2015-11-25 | 阿里巴巴集团控股有限公司 | 用于处理业务请求及获取业务处理结果的方法、装置和系统 |
CN106775901A (zh) * | 2017-01-22 | 2017-05-31 | 上海卓悠网络科技有限公司 | 一种数据预加载方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111629056A (zh) * | 2020-05-27 | 2020-09-04 | 浙江百世技术有限公司 | 一种网络请求处理方法及应用 |
CN111629056B (zh) * | 2020-05-27 | 2023-04-07 | 浙江百世技术有限公司 | 一种网络请求处理方法及应用 |
CN112231604A (zh) * | 2020-06-12 | 2021-01-15 | 北京沃东天骏信息技术有限公司 | 一种页面显示方法、装置、电子设备和存储介质 |
CN112269710A (zh) * | 2020-09-18 | 2021-01-26 | 天地互联科技(广州)有限公司 | 机载监控系统和其监控方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2019019249A1 (zh) | 2019-01-31 |
CN107682389B (zh) | 2020-02-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10437631B2 (en) | Operating system hot-switching method and apparatus and mobile terminal | |
CN107682389A (zh) | 一种执行网络请求的方法、终端及计算机可读存储介质 | |
TWI559153B (zh) | 分散式計算架構 | |
CN107528922A (zh) | 一种消息推送方法、终端及计算机可读存储介质 | |
US9973506B2 (en) | Method and apparatus for clearing notification icon, and storage medium | |
CN113641457B (zh) | 容器创建方法、装置、设备、介质及程序产品 | |
CN104765466B (zh) | 移动终端的按键控制方法及装置 | |
CN109542645A (zh) | 一种调用服务的方法、装置、电子设备及存储介质 | |
US20140031026A1 (en) | Method and device for performing a cleaning process on a portable electronic device | |
EP3220269A1 (en) | Mobile terminal and resource management method thereof | |
CN107066188A (zh) | 一种发送截屏图片的方法及终端 | |
CN110286819B (zh) | 一种窗口管理方法及计算设备 | |
WO2022179486A1 (zh) | 多核处理器任务调度方法、装置及设备、存储介质 | |
CN106375186A (zh) | 一种日程分享方法及终端 | |
CN105610682A (zh) | 一种即时通信应用中将联系人添加至群组的方法和装置 | |
CN107491300A (zh) | 一种智能功能的提示方法及其终端 | |
CN113961346A (zh) | 数据缓存的管理与调度方法、装置、电子设备和存储介质 | |
CN107704241A (zh) | 一种页面状态切换的显示方法和装置 | |
CN110138662A (zh) | 多核系统中的会话表项处理方法、装置及多核系统 | |
CN110008027A (zh) | 进程的运行方法、装置、终端及存储介质 | |
WO2014019471A1 (en) | Method and device for performing cleaning process on portable electronic device | |
CN108366098A (zh) | 一种网络节点的数据交互方法及装置 | |
CN104115101A (zh) | 输入指示器延迟 | |
CN110989820A (zh) | 处理器功耗的控制方法、装置、处理器及电子装置 | |
EP2775671A1 (en) | Method and apparatus for sending and receiving messages |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |