CN108182195A - 一种数据的加载方法、装置、终端及存储介质 - Google Patents
一种数据的加载方法、装置、终端及存储介质 Download PDFInfo
- Publication number
- CN108182195A CN108182195A CN201711181508.6A CN201711181508A CN108182195A CN 108182195 A CN108182195 A CN 108182195A CN 201711181508 A CN201711181508 A CN 201711181508A CN 108182195 A CN108182195 A CN 108182195A
- Authority
- CN
- China
- Prior art keywords
- next page
- data
- page data
- precalculated position
- case
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种数据的加载方法、装置、终端及存储介质,该方法包括:在当前页面到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求;在接收到下一页面数据的情况下,在当前页面到达第二预定位置时,渲染下一页面数据。本发明在当前页面到达第一预定位置时就发送下一页面数据的获取请求,在当前页面到达第二预定位置时,下一页面数据已经接收到,就可以直接对下一页面数据进行渲染,使用户在查看下一页面时可以直接看到,大大减少用户在当前页面的等待时间,用户体验较好,解决了现有技术的问题。
Description
技术领域
本发明涉及通讯领域,特别是涉及一种数据的加载方法、装置、终端及存储介质。
背景技术
懒加载(Load On Demand)是一种强大的数据获取方法,现有技术中,大多数列表页面都是采用上述的懒加载方式来加载列表信息(即下一个页面数据)。
用户都可以通过滚动页面到底部,来加载更多的列表信息。
在使用懒加载方式获取数据时,用户滑动当前页面的底部时开始向服务器发送下一个页面数据的获取请求,等到请求数据成功后,才开始渲染该数据,以呈现页面显示的效果,该方式可以在最大程度上减少服务器端的资源耗用。
虽然这种懒加载的方式能够减少服务器端的压力,但却需要用户等待一个完整的请求往返的时间,然后才能看到新的页面,用户需要看着页面加载,等待的时间较长,用户的体验较差。
发明内容
本发明提供一种数据的加载方法、装置、终端及存储介质,用以解决现有技术的如下问题:现有页面的加载方式,需要用户等待一个完整的请求往返的时间,然后才能看到新的页面,用户需要看着页面加载,等待的时间较长,用户的体验较差。
为解决上述技术问题,一方面,本发明提供一种数据的加载方法,包括:在当前页面到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求;在接收到所述下一页面数据的情况下,在所述当前页面到达第二预定位置时,渲染所述下一页面数据;其中,所述第一预定位置在所述当前页面的位置高度高于所述第二预定位置在所述当前页面的位置高度。
可选的,在当前页面到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求,包括:检测当前页面是否为第一次到达所述第一预定位置;在第一次到达所述第一预定位置的情况下,向服务器发送下一页面数据的获取请求。
可选的,在当前页面到达第二预定位置时,渲染所述下一页面数据,包括:检测所述当前页面是否为第一次到达所述第二预定位置;在第一次到达所述第二预定位置的情况下,渲染所述下一页面数据。
可选的,向服务器发送下一页面数据的获取请求之后,还包括:检测是否接收到所述下一页面数据;在未接收到所述下一页面数据的情况下,检测是否存在待请求的所述下一页面数据;在存在待请求的所述下一页面数据的情况下,检测当前页面是否到达所述第二预定位置;在到达所述第二预定位置的情况下,向所述服务器发送所述下一页面数据的获取请求。
可选的,向服务器发送下一页面数据的获取请求之后,还包括:检测是否接收到所述下一页面数据;在未接收到所述下一页面数据的情况下,检测是否存在待请求的所述下一页面数据;在存在待请求的所述下一页面数据的情况下,检测所述当前页面是否再次到达所述第一预定位置;在所述当前页面再次到达所述第一预定位置的情况下,向服务器发送所述下一页面数据的获取请求。
另一方面,本发明还提供一种数据的加载装置,包括:发送模块,用于在当前页面到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求;渲染模块,用于在接收到所述下一页面数据的情况下,在所述当前页面到达第二预定位置时,渲染所述下一页面数据;其中,所述第一预定位置在所述当前页面的位置高度高于所述第二预定位置在所述当前页面的位置高度。
可选的,所述发送模块包括:第一检测单元,用于检测当前页面是否为第一次到达所述第一预定位置;发送单元,用于在第一次到达所述第一预定位置的情况下,向服务器发送下一页面数据的获取请求。
可选的,所述渲染模块包括:第二检测单元,用于检测所述当前页面是否为第一次到达所述第二预定位置;渲染单元,用于在第一次到达所述第二预定位置的情况下,渲染所述下一页面数据。
可选的,还包括:第一检测模块,用于检测是否接收到所述下一页面数据;在未接收到所述下一页面数据的情况下,检测是否存在待请求的所述下一页面数据;在存在待请求的所述下一页面数据的情况下,检测当前页面是否到达所述第二预定位置;所述发送模块,还用于在到达所述第二预定位置的情况下,向所述服务器发送所述下一页面数据的获取请求。
可选的,还包括:第二检测模块,用于检测是否接收到所述下一页面数据;在未接收到所述下一页面数据的情况下,检测是否存在待请求的所述下一页面数据;在存在待请求的所述下一页面数据的情况下,检测所述当前页面是否再次到达所述第一预定位置;所述发送模块,还用于在所述当前页面再次到达所述第一预定位置的情况下,向服务器发送所述下一页面数据的获取请求。
另一方面,本发明还提供一种终端,包括上述的数据的加载装置。
另一方面,本发明还提供一种存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现上述数据的加载方法的步骤。
本发明在当前页面到达第一预定位置时就发送下一页面数据的获取请求,在当前页面到达第二预定位置时,下一页面数据已经接收到,就可以直接对下一页面数据进行渲染,使用户在查看下一页面时可以直接看到,大大减少用户在当前页面的等待时间,用户体验较好,解决了现有技术的如下问题:现有页面的加载方式,需要用户等待一个完整的请求往返的时间,然后才能看到新的页面,用户需要看着页面加载,等待的时间较长,用户的体验较差。
附图说明
图1是本发明第一实施例中数据的加载方法的流程图;
图2是本发明第二实施例中数据的加载方法的流程图;
图3是本发明第三实施例中数据的加载方法的流程图;
图4是本发明第四实施例中数据的加载方法的流程图;
图5是本发明第五实施例中数据的加载方法的流程图;
图6是本发明第六实施例中数据的加载方法的流程图;
图7是本发明第七实施例中数据的加载装置的结构示意图;
图8是本发明第八实施例中数据的加载装置的结构示意图;
图9是本发明第九实施例中数据的加载装置的结构示意图。
具体实施方式
为了解决现有技术的如下问题:现有页面的加载方式,需要用户等待一个完整的请求往返的时间,然后才能看到新的页面,用户需要看着页面加载,等待的时间较长,用户的体验较差;本发明提供了一种数据的加载方法、装置、终端及存储介质,以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。
本发明第一实施例提供了一种数据的加载方法,该方法的流程如图1所示,包括步骤S101至S102:
S101,在当前页面到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求。
具体实现时,第一预定位置可以是页面较为靠上的位置,这样,在当前页面到达第一预定位置的时候,才可以有更多的时间来向服务器发送下一页面数据的获取请求;优选的,可以将第一预定位置设置为当前页面的页面中部。
S102,在接收到下一页面数据的情况下,在当前页面到达第二预定位置时,渲染下一页面数据。
在向服务器发送下一页面数据的获取请求之后,服务器会对该获取请求进行处理,服务器会向终端发送下一页面数据,终端在接收到下一页面数据时对其进行保存,并在当前页面到达第二预定位置时,直接渲染下一页面数据。实现过程中,达到第二预定位置对应的是获取到下一页面数据后的渲染操作,因此,第二预定位置是在当前页面中第一预定位置之后的任意一个位置,优选的可以设置为当前页面的底部。
具体实现时,上述第一预定位置在当前页面的位置高度需要高于上述第二预定位置在当前页面的位置高度,这样,才能够保证用户在浏览页面时是先到达第一预定位置,再到达第二预定位置,保证了上述方法的正常实施。
本发明实施例在当前页面到达第一预定位置时就发送下一页面数据的获取请求,在当前页面到达第二预定位置时,下一页面数据已经接收到,就可以直接对下一页面数据进行渲染,使用户在查看下一页面时可以直接看到,大大减少用户在当前页面的等待时间,用户体验较好,解决了现有技术的如下问题:现有页面的加载方式,需要用户等待一个完整的请求往返的时间,然后才能看到新的页面,用户需要看着页面加载,等待的时间较长,用户的体验较差。
本发明第二实施例提供了一种数据的加载方法,该方法的流程如图2所示,包括步骤S201至S204:
S201,检测当前页面是否为第一次到达第一预定位置。如果是,则执行S202,否则执行S203。
S202,在第一次到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求。执行S204。
S203,在不是第一次到达第一预定位置的情况下,不向服务器发送下一页面数据的获取请求。
具体实现时,第一预定位置可以是页面较为靠上的位置,这样,在当前页面到达第一预定位置的时候,才可以有更多的时间来向服务器发送下一页面数据的获取请求;优选的,可以将第一预定位置设置为当前页面的页面二分之一处。
S204,在接收到下一页面数据的情况下,在当前页面到达第二预定位置时,渲染下一页面数据。
在向服务器发送下一页面数据的获取请求之后,服务器会对该获取请求进行处理,服务器会向终端发送下一页面数据,终端在接收到下一页面数据时对其进行保存,并在当前页面到达第二预定位置时,直接渲染下一页面数据。实现过程中,达到第二预定位置对应的是获取到下一页面数据后的渲染操作,因此,第二预定位置是在当前页面中第一预定位置之后的任意一个位置,优选的可以设置为当前页面的五分之四处。
由于用户在查看网页页面或APP页面时,通常都带有操作的不确定性,因此,在翻看页面时,可能多次往返查看某一位置,如果该位置正好是本实施例的第一预定位置,则只在第一次到达第一预定位置时才触发发送获取请求,这样不会在用户每次到达第一预定位置时都会发送获取请求而浪费用户的流量;在当前页面到达第二预定位置时,就可以直接对下一页面数据进行渲染,使用户在查看下一页面时就可以直接看到,大大减少用户在当前页面的等待时间,用户体验较好。
具体实现时,上述第一预定位置在当前页面的位置高度需要高于上述第二预定位置在当前页面的位置高度,这样,才能够保证用户在浏览页面时是先到达第一预定位置,再到达第二预定位置,保证了上述方法的正常实施。
本发明第三实施例提供了一种数据的加载方法,该方法的流程如图1所示,包括步骤S301至S303:
S301,在当前页面到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求。
具体实现时,第一预定位置可以是页面较为靠上的位置,这样,在当前页面到达第一预定位置的时候,才可以有更多的时间来向服务器发送下一页面数据的获取请求;优选的,可以将第一预定位置设置为当前页面的页面中部。
S302,检测当前页面是否为第一次到达第二预定位置。
S303,在第一次到达第二预定位置的情况下,渲染下一页面数据。
在不是第一次到达第二预定位置的情况下,由于之前已经渲染过下一页面数据,所以此时不进行任何操作。
由于用户在查看网页页面或APP页面时,通常都带有操作的不确定性,因此,在翻看页面时,可能多次往返查看某一位置,如果该位置正好是本实施例的第二预定位置,则只在第一次到达第二预定位置时才触发发送获取请求,这样不会浪费终端的系统资源,使用户在查看下一页面时就可以直接看到,大大减少用户在当前页面的等待时间,用户体验较好。
本发明第四实施例提供了一种数据的加载方法,该方法的流程如图1所示,包括步骤S401至S405:
S401,检测当前页面是否为第一次到达第一预定位置。
S402,在第一次到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求。
具体实现时,第一预定位置可以是页面较为靠上的位置,这样,在当前页面到达第一预定位置的时候,才可以有更多的时间来向服务器发送下一页面数据的获取请求;优选的,可以将第一预定位置设置为当前页面的页面三分之一处。
S403,服务器接收到来自终端的下一页面数据的获取请求的情况下,将下一页面数据发送至终端。
S404,检测当前页面是否为第一次到达第二预定位置。
S405,在第一次到达第二预定位置的情况下,渲染下一页面数据。
实现过程中,达到第二预定位置对应的是获取到下一页面数据后的渲染操作,因此,第二预定位置是在当前页面中第一预定位置之后的任意一个位置,优选的可以设置为当前页面的五分之四处。
由于用户在查看网页页面或APP页面时,通常都带有操作的不确定性,因此,在翻看页面时,可能多次往返查看某一位置,如果该位置正好是本实施例的第一预定位置或第二预定位置,则只在第一次到达第一预定位置时才触发发送获取请求,这样不会在用户每次到达第一预定位置时都会发送获取请求而浪费用户的流量;只在第一次到达第二预定位置时才触发发送获取请求,这样不会浪费终端的系统资源,使用户在查看下一页面时就可以直接看到;上述方法可以大大减少用户在当前页面的等待时间,用户体验较好。
本发明第五实施例提供了一种数据的加载方法,该方法的流程如图1所示,包括步骤S501至S508:
S501,在当前页面到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求。
具体实现时,第一预定位置可以是页面较为靠上的位置,这样,在当前页面到达第一预定位置的时候,才可以有更多的时间来向服务器发送下一页面数据的获取请求;优选的,可以将第一预定位置设置为当前页面的页面中部。
S502,检测是否接收到下一页面数据。如果是,则执行S507,否则执行S503。
S503,在未接收到下一页面数据的情况下,检测是否存在待请求的下一页面数据。如果是,则执行S504,否则执行S508。
由于之前发送过下一页面数据的获取请求,但并没有接收到下一页面数据,因此,需要确定后续是否还有再次发送下一页面数据的获取请求的必要,所以该过程会检测是否存在待请求的下一页面数据。该过程中的待请求的下一页面数据就是应该发送获取请求来获取的下一页面数据。
S504,在存在待请求的下一页面数据的情况下,说明有下一页面数据,只是之前没有获取到,则检测当前页面是否到达第二预定位置。如果是,则执行S505,否则继续执行S504。
S505,在到达第二预定位置的情况下,向服务器发送下一页面数据的获取请求。
S506,服务器接收到来自终端的下一页面数据的获取请求的情况下,将下一页面数据发送至终端。
S507,在接收到下一页面数据的情况下,在当前页面到达第二预定位置时,渲染下一页面数据。
在向服务器发送下一页面数据的获取请求之后,服务器会对该获取请求进行处理,服务器会向终端发送下一页面数据,终端在接收到下一页面数据时对其进行保存,并在当前页面到达第二预定位置时,直接渲染下一页面数据。实现过程中,达到第二预定位置对应的是获取到下一页面数据后的渲染操作,因此,第二预定位置是在当前页面中第一预定位置之后的任意一个位置,优选的可以设置为当前页面的底部。
S508,记录不存在待请求的下一页面数据,以便后续不再发送获取请求。
本发明实施例在未接收到下一页面数据的情况下,会检测是否存在待请求的下一页面数据,以确定是当前下一页面数据没有获取成功,还是没有下一页面数据了;当确定有下一页面数据,但并没有获取到时,可以检测当前页面是否到达第二预定位置,并在到达第二预定位置时向服务器发送下一页面数据的获取请求。该方法在第一预定位置没有成功获取到下一页面数据的情况下,继续提供了一种能够获取到下一页面数据的方式,保证了用户能够顺利查看到下一页面,保证了用户的使用体验。
本发明第六实施例提供了一种数据的加载方法,该方法的流程如图1所示,包括步骤S601至S608:
S601,在当前页面到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求。
具体实现时,第一预定位置可以是页面较为靠上的位置,这样,在当前页面到达第一预定位置的时候,才可以有更多的时间来向服务器发送下一页面数据的获取请求;优选的,可以将第一预定位置设置为当前页面的页面中部。
S602,检测是否接收到下一页面数据。如果是,则执行S607,否则执行S603。
S603,在未接收到下一页面数据的情况下,检测是否存在待请求的下一页面数据。如果是,则执行S604,否则执行S608。
由于之前发送过下一页面数据的获取请求,但并没有接收到下一页面数据,因此,需要确定后续是否还有再次发送下一页面数据的获取请求的必要,所以该过程会检测是否存在待请求的下一页面数据。该过程中的待请求的下一页面数据就是应该发送获取请求来获取的下一页面数据。
S604,在存在待请求的下一页面数据的情况下,说明有下一页面数据,只是之前没有获取到,则检测当前页面是否再次到达第一预定位置。如果是,则执行S605,否则继续执行S604。
S605,在当前页面再次到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求。
S606,服务器接收到来自终端的下一页面数据的获取请求的情况下,将下一页面数据发送至终端。
S607,在接收到下一页面数据的情况下,在当前页面到达第二预定位置时,渲染下一页面数据。
在向服务器发送下一页面数据的获取请求之后,服务器会对该获取请求进行处理,服务器会向终端发送下一页面数据,终端在接收到下一页面数据时对其进行保存,并在当前页面到达第二预定位置时,直接渲染下一页面数据。实现过程中,达到第二预定位置对应的是获取到下一页面数据后的渲染操作,因此,第二预定位置是在当前页面中第一预定位置之后的任意一个位置,优选的可以设置为当前页面的底部。
S608,记录不存在待请求的下一页面数据,以便后续不再发送获取请求。
本发明实施例在未接收到下一页面数据的情况下,会检测是否存在待请求的下一页面数据,以确定是当前下一页面数据没有获取成功,还是没有下一页面数据了;当确定有下一页面数据,但并没有获取到时,可以检测当前页面是否再次到达第一预定位置,并在再次到达第一预定位置时,再次向服务器发送下一页面数据的获取请求,这样,就可以重新获取下一页面数据,当然,该过程仅是在获取下一页面数据失败的情况下,才会再次检测是否再次到达第一预定位置,而不是每次到达第一预定位置都发送获取请求。该方法在没有成功获取到下一页面数据的情况下,继续提供了一种能够获取到下一页面数据的方式,保证了用户能够顺利查看到下一页面,保证了用户的使用体验。
本发明第七实施例提供了一种数据的加载装置,该装置的结构示意如图7所示,包括:发送模块10,用于在当前页面到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求;渲染模块11,与发送模块10耦合,用于在接收到下一页面数据的情况下,在当前页面到达第二预定位置时,渲染下一页面数据;其中,第一预定位置在当前页面的位置高度高于第二预定位置在当前页面的位置高度。
具体实现时,第一预定位置可以是页面较为靠上的位置,这样,在当前页面到达第一预定位置的时候,才可以有更多的时间来向服务器发送下一页面数据的获取请求;优选的,可以将第一预定位置设置为当前页面的页面中部。
在发送模块10向服务器发送下一页面数据的获取请求之后,服务器会对该获取请求进行处理,服务器会向终端发送下一页面数据,终端在接收到下一页面数据时对其进行保存,并在检测到当前页面到达第二预定位置时,直接让渲染模块11渲染下一页面数据。实现过程中,达到第二预定位置对应的是获取到下一页面数据后的渲染操作,因此,第二预定位置是在当前页面中第一预定位置之后的任意一个位置,优选的可以设置为当前页面的底部。
由于用户在查看网页页面或APP页面时,通常都带有操作的不确定性,因此,在翻看页面时,可能多次往返查看某一位置,为了避免实现上述方案时存在多次触发机制,因此,本实施例的发送模块10和渲染模块11还可以包括细化的功能单元。
具体的,发送模块10包括:第一检测单元,用于检测当前页面是否为第一次到达第一预定位置;发送单元,与第一检测单元耦合,用于在第一次到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求。渲染模块包括:第二检测单元,用于检测当前页面是否为第一次到达第二预定位置;渲染单元,与第二检测单元耦合,用于在第一次到达第二预定位置的情况下,渲染下一页面数据。
如果上述多次到达的位置正好是本实施例的第一预定位置或第二预定位置,则只在第一次到达第一预定位置时才触发发送获取请求,这样不会在用户每次到达第一预定位置时都会发送获取请求而浪费用户的流量;只在第一次到达第二预定位置时才触发发送获取请求,这样不会浪费终端的系统资源,使用户在查看下一页面时就可以直接看到;上述方法可以大大减少用户在当前页面的等待时间,用户体验较好。
本发明第八实施例提供了一种数据的加载装置,该装置可以设置在终端中,该装置的结构示意如图8所示,包括:
发送模块20,用于在当前页面到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求;第一检测模块21,与发送模块20耦合,用于检测是否接收到下一页面数据;在未接收到下一页面数据的情况下,检测是否存在待请求的下一页面数据;在存在待请求的下一页面数据的情况下,检测当前页面是否到达第二预定位置;发送模块22,与第一检测模块21耦合,还用于在到达第二预定位置的情况下,向服务器发送下一页面数据的获取请求;渲染模块23,与第一检测模块21耦合,用于在接收到下一页面数据的情况下,在当前页面到达第二预定位置时,渲染下一页面数据;其中,第一预定位置在当前页面的位置高度高于第二预定位置在当前页面的位置高度。
本发明实施例在未接收到下一页面数据的情况下,会检测是否存在待请求的下一页面数据,以确定是当前下一页面数据没有获取成功,还是没有下一页面数据了;当确定有下一页面数据,但并没有获取到时,可以检测当前页面是否到达第二预定位置,并在到达第二预定位置时向服务器发送下一页面数据的获取请求。该方法在第一预定位置没有成功获取到下一页面数据的情况下,继续提供了一种能够获取到下一页面数据的方式,保证了用户能够顺利查看到下一页面,保证了用户的使用体验。
本发明第九实施例提供了一种数据的加载装置,该装置可以设置在移动终端中,该装置的结构示意如图9所示,包括:
发送模块30,用于在当前页面到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求;第二检测模块31,与发送模块30耦合,用于检测是否接收到下一页面数据;在未接收到下一页面数据的情况下,检测是否存在待请求的下一页面数据;在存在待请求的下一页面数据的情况下,检测当前页面是否再次到达第一预定位置;发送模块30,还用于在当前页面再次到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求;渲染模块32,与第二检测模块31耦合,用于在接收到下一页面数据的情况下,在当前页面到达第二预定位置时,渲染下一页面数据;其中,第一预定位置在当前页面的位置高度高于第二预定位置在当前页面的位置高度。
本发明实施例在未接收到下一页面数据的情况下,会检测是否存在待请求的下一页面数据,以确定是当前下一页面数据没有获取成功,还是没有下一页面数据了;当确定有下一页面数据,但并没有获取到时,可以检测当前页面是否再次到达第一预定位置,并在再次到达第一预定位置时,再次向服务器发送下一页面数据的获取请求,这样,就可以重新获取下一页面数据,当然,该过程仅是在获取下一页面数据失败的情况下,才会再次检测是否再次到达第一预定位置,而不是每次到达第一预定位置都发送获取请求。该方法在没有成功获取到下一页面数据的情况下,继续提供了一种能够获取到下一页面数据的方式,保证了用户能够顺利查看到下一页面,保证了用户的使用体验。
在具体实施过程中,本实施例的第二检测模块31与第八实施例中的第一检测模块21可以设置为一个整体的检测模块,即将两个模块的功能进行融合,通过两种触发机制来再次发送下一页面数据的获取请求,此处不再赘述。
本发明第十实施例提供了一种存储介质,存储有计算机程序,计算机程序被处理器执行时实现如下步骤:
S1,在当前页面到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求;
S2,在接收到下一页面数据的情况下,在当前页面到达第二预定位置时,渲染下一页面数据。
计算机程序被处理器执行在当前页面到达第一预定位置的情况下、向服务器发送下一页面数据的获取请求的步骤时,具体实现如下步骤:检测当前页面是否为第一次到达第一预定位置;在第一次到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求。
计算机程序被处理器执在当前页面到达第二预定位置时、渲染下一页面数据的步骤时,具体实现如下步骤:检测当前页面是否为第一次到达第二预定位置;在第一次到达第二预定位置的情况下,渲染下一页面数据。
由于用户在查看网页页面或APP页面时,通常都带有操作的不确定性,因此,在翻看页面时,可能多次往返查看某一位置,如果上述多次到达的位置正好是本实施例的第一预定位置或第二预定位置,则只在第一次到达第一预定位置时才触发发送获取请求,这样不会在用户每次到达第一预定位置时都会发送获取请求而浪费用户的流量;只在第一次到达第二预定位置时才触发发送获取请求,这样不会浪费终端的系统资源,使用户在查看下一页面时就可以直接看到;上述方法可以大大减少用户在当前页面的等待时间,用户体验较好。
计算机程序被处理器执行向服务器发送下一页面数据的获取请求的步骤之后,计算机程序还被处理器执行如下步骤:
检测是否接收到下一页面数据;在未接收到下一页面数据的情况下,检测是否存在待请求的下一页面数据;在存在待请求的下一页面数据的情况下,检测当前页面是否到达第二预定位置;在到达第二预定位置的情况下,向服务器发送下一页面数据的获取请求。
该过程在未接收到下一页面数据的情况下,会检测是否存在待请求的下一页面数据,以确定是当前下一页面数据没有获取成功,还是没有下一页面数据了;当确定有下一页面数据,但并没有获取到时,可以检测当前页面是否到达第二预定位置,并在到达第二预定位置时向服务器发送下一页面数据的获取请求。该方法在第一预定位置没有成功获取到下一页面数据的情况下,继续提供了一种能够获取到下一页面数据的方式,保证了用户能够顺利查看到下一页面,保证了用户的使用体验。
计算机程序被处理器执行向服务器发送下一页面数据的获取请求的步骤之后,计算机程序还可以被处理器执行如下步骤:
检测是否接收到下一页面数据;在未接收到下一页面数据的情况下,检测是否存在待请求的下一页面数据;在存在待请求的下一页面数据的情况下,检测当前页面是否再次到达第一预定位置;在当前页面再次到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求。
该过程在未接收到下一页面数据的情况下,会检测是否存在待请求的下一页面数据,以确定是当前下一页面数据没有获取成功,还是没有下一页面数据了;当确定有下一页面数据,但并没有获取到时,可以检测当前页面是否再次到达第一预定位置,并在再次到达第一预定位置时,再次向服务器发送下一页面数据的获取请求,这样,就可以重新获取下一页面数据,当然,该过程仅是在获取下一页面数据失败的情况下,才会再次检测是否再次到达第一预定位置,而不是每次到达第一预定位置都发送获取请求。该方法在没有成功获取到下一页面数据的情况下,继续提供了一种能够获取到下一页面数据的方式,保证了用户能够顺利查看到下一页面,保证了用户的使用体验。
在本领域技术人员根据上述实施例的内容进行编程时,需要考虑到避免程序死循环问题,因此,本实施例设置了一个控制器(即一段程序)来避免死循环,下面从程序撰写逻辑对上述实施例进行说明。
当用户在APP中查看页面时,用户可以自由滚动页面。当在用户滚动页面时,获取用户滚动页面距离底部的高度,并进行判断。如果用户滚动页面到中部时,给控制器发送通知。这里的“中部”,指的并不是页面的中间部分,而是指距离页面底部还有一段距离,这段距离是可以调整的。只需保证,到达该位置时,能够提前发送获取请求给服务器,以减少用户后续等待时间即可。如果用户滚动页面到底部时,会记录一个用户已经滑动到达底部的标识,然后给控制器发送通知。
在页面达到中部时,会发送获取请求给服务端来获取下一页面数据,该过程是受控制器监控的,因此,在发送请求开始时就记录请求状态为pending。判断是否成功返回下一页面数据。如果下一页面数据成功返回,将该数据记录下来,并记录请求状态为resolved(成功),然后给控制器发送通知。如果下一页面数据没有成功返回,记录请求状态为rejected(失败),然后给控制器发送通知。
控制器接收各种的通知,当接受到通知时,为了避免死循环,都会判断是否存储有接收到的下一页面数据。如果存储有接收到的下一页面数据,再判断是否用户是否滚动页面到达底部。如果用户到达底部,重置用户到达底部状态为否,然后渲染新的列表信息。如果没有存储有接收到的下一页面数据,判断请求状态。如果当前请求状态为pending,提示用户新的列表信息正在加载中;如果当前请求状态为rejected,发送获取请求给服务器;如果当前请求状态为resolved,则不再发送获取请求。
本发明实施例在用户到达页面底部之前,就能够将当前页面数据的获取请求发送出去,可以减少用户刷新下一页面等待的时间,用户体验较好。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccessMemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行上述实施例记载的方法步骤。可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
尽管为示例目的,已经公开了本发明的优选实施例,本领域的技术人员将意识到各种改进、增加和取代也是可能的,因此,本发明的范围应当不限于上述实施例。
Claims (10)
1.一种数据的加载方法,其特征在于,包括:
在当前页面到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求;
在接收到所述下一页面数据的情况下,在所述当前页面到达第二预定位置时,渲染所述下一页面数据;其中,所述第一预定位置在所述当前页面的位置高度高于所述第二预定位置在所述当前页面的位置高度。
2.如权利要求1所述的数据的加载方法,其特征在于,在当前页面到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求,包括:
检测当前页面是否为第一次到达所述第一预定位置;
在第一次到达所述第一预定位置的情况下,向服务器发送下一页面数据的获取请求。
3.如权利要求1或2所述的数据的加载方法,其特征在于,向服务器发送下一页面数据的获取请求之后,还包括:
检测是否接收到所述下一页面数据;
在未接收到所述下一页面数据的情况下,检测是否存在待请求的所述下一页面数据;
在存在待请求的所述下一页面数据的情况下,检测当前页面是否到达所述第二预定位置;
在到达所述第二预定位置的情况下,向所述服务器发送所述下一页面数据的获取请求。
4.如权利要求1或2所述的数据的加载方法,其特征在于,向服务器发送下一页面数据的获取请求之后,还包括:
检测是否接收到所述下一页面数据;
在未接收到所述下一页面数据的情况下,检测是否存在待请求的所述下一页面数据;
在存在待请求的所述下一页面数据的情况下,检测所述当前页面是否再次到达所述第一预定位置;
在所述当前页面再次到达所述第一预定位置的情况下,向服务器发送所述下一页面数据的获取请求。
5.一种数据的加载装置,其特征在于,包括:
发送模块,用于在当前页面到达第一预定位置的情况下,向服务器发送下一页面数据的获取请求;
渲染模块,用于在接收到所述下一页面数据的情况下,在所述当前页面到达第二预定位置时,渲染所述下一页面数据;其中,所述第一预定位置在所述当前页面的位置高度高于所述第二预定位置在所述当前页面的位置高度。
6.如权利要求5所述的数据的加载装置,其特征在于,所述发送模块包括:
第一检测单元,用于检测当前页面是否为第一次到达所述第一预定位置;
发送单元,用于在第一次到达所述第一预定位置的情况下,向服务器发送下一页面数据的获取请求。
7.如权利要求5或6所述的数据的加载装置,其特征在于,还包括:
第一检测模块,用于检测是否接收到所述下一页面数据;在未接收到所述下一页面数据的情况下,检测是否存在待请求的所述下一页面数据;在存在待请求的所述下一页面数据的情况下,检测当前页面是否到达所述第二预定位置;
所述发送模块,还用于在到达所述第二预定位置的情况下,向所述服务器发送所述下一页面数据的获取请求。
8.如权利要求5或6所述的数据的加载装置,其特征在于,还包括:
第二检测模块,用于检测是否接收到所述下一页面数据;在未接收到所述下一页面数据的情况下,检测是否存在待请求的所述下一页面数据;在存在待请求的所述下一页面数据的情况下,检测所述当前页面是否再次到达所述第一预定位置;
所述发送模块,还用于在所述当前页面再次到达所述第一预定位置的情况下,向服务器发送所述下一页面数据的获取请求。
9.一种终端,其特征在于,包括权利要求5至8中任一项所述的数据的加载装置。
10.一种存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述数据的加载方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711181508.6A CN108182195A (zh) | 2017-11-23 | 2017-11-23 | 一种数据的加载方法、装置、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711181508.6A CN108182195A (zh) | 2017-11-23 | 2017-11-23 | 一种数据的加载方法、装置、终端及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108182195A true CN108182195A (zh) | 2018-06-19 |
Family
ID=62545221
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711181508.6A Pending CN108182195A (zh) | 2017-11-23 | 2017-11-23 | 一种数据的加载方法、装置、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108182195A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109739571A (zh) * | 2018-12-20 | 2019-05-10 | 努比亚技术有限公司 | 应用程序启动方法、移动终端及计算机可读存储介质 |
CN111259284A (zh) * | 2018-11-30 | 2020-06-09 | 阿里巴巴集团控股有限公司 | 页面懒加载的方法和装置、存储介质和处理器 |
CN112887376A (zh) * | 2021-01-14 | 2021-06-01 | 广东电网有限责任公司广州供电局 | feed流去重方法、装置、系统、计算机设备和存储介质 |
CN113656020A (zh) * | 2021-08-13 | 2021-11-16 | 小马国炬(玉溪)科技有限公司 | 一种基于ReactNative的图片展示组件开发方法及相关组件 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102222086A (zh) * | 2011-05-18 | 2011-10-19 | 广州市动景计算机科技有限公司 | 基于移动终端的网页阅读方法、网页阅读装置及移动终端 |
US20120109932A1 (en) * | 2010-11-03 | 2012-05-03 | Google Inc. | Related links |
CN103678307A (zh) * | 2012-08-31 | 2014-03-26 | 腾讯科技(深圳)有限公司 | 页面显示方法及客户端 |
CN104007990A (zh) * | 2014-05-30 | 2014-08-27 | 北京金山网络科技有限公司 | 一种网页加载方法及浏览器 |
CN104572912A (zh) * | 2014-12-26 | 2015-04-29 | 北京京东尚科信息技术有限公司 | 一种网页页面加载方法及系统 |
CN105677327A (zh) * | 2015-12-30 | 2016-06-15 | 合一网络技术(北京)有限公司 | 一种页面信息预加载的方法及系统 |
-
2017
- 2017-11-23 CN CN201711181508.6A patent/CN108182195A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120109932A1 (en) * | 2010-11-03 | 2012-05-03 | Google Inc. | Related links |
CN102222086A (zh) * | 2011-05-18 | 2011-10-19 | 广州市动景计算机科技有限公司 | 基于移动终端的网页阅读方法、网页阅读装置及移动终端 |
CN103678307A (zh) * | 2012-08-31 | 2014-03-26 | 腾讯科技(深圳)有限公司 | 页面显示方法及客户端 |
CN104007990A (zh) * | 2014-05-30 | 2014-08-27 | 北京金山网络科技有限公司 | 一种网页加载方法及浏览器 |
CN104572912A (zh) * | 2014-12-26 | 2015-04-29 | 北京京东尚科信息技术有限公司 | 一种网页页面加载方法及系统 |
CN105677327A (zh) * | 2015-12-30 | 2016-06-15 | 合一网络技术(北京)有限公司 | 一种页面信息预加载的方法及系统 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111259284A (zh) * | 2018-11-30 | 2020-06-09 | 阿里巴巴集团控股有限公司 | 页面懒加载的方法和装置、存储介质和处理器 |
CN111259284B (zh) * | 2018-11-30 | 2023-05-02 | 阿里巴巴集团控股有限公司 | 页面懒加载的方法和装置、存储介质和处理器 |
CN109739571A (zh) * | 2018-12-20 | 2019-05-10 | 努比亚技术有限公司 | 应用程序启动方法、移动终端及计算机可读存储介质 |
CN112887376A (zh) * | 2021-01-14 | 2021-06-01 | 广东电网有限责任公司广州供电局 | feed流去重方法、装置、系统、计算机设备和存储介质 |
CN113656020A (zh) * | 2021-08-13 | 2021-11-16 | 小马国炬(玉溪)科技有限公司 | 一种基于ReactNative的图片展示组件开发方法及相关组件 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108182195A (zh) | 一种数据的加载方法、装置、终端及存储介质 | |
KR102297825B1 (ko) | 스마트 방송 방법 및 장치 | |
CN104104707B (zh) | 网页数据更新方法、终端、缓存服务器及系统 | |
CN110311831B (zh) | 基于容器云的系统资源监控方法及相关设备 | |
CN107733726A (zh) | 一种服务请求的处理方法及装置 | |
CN103544020A (zh) | 一种显示应用软件图标的方法及移动终端 | |
CN105786405A (zh) | 一种在线升级方法、装置及系统 | |
CN104679459A (zh) | 一种订单打印系统和方法 | |
CN104881279B (zh) | 一种群发消息的方法及装置 | |
KR20160021419A (ko) | 모바일 단말기 테스트 시스템 및 이를 이용한 모바일 단말기 테스트 방법 | |
CN102938783A (zh) | 一种Socket处理方法、装置和Web服务器 | |
US20180167546A1 (en) | Method, device and computer readable medium for communiation using smart video cameras | |
CN106572095A (zh) | 帐号注册方法、装置及系统 | |
CN113411806B (zh) | 移动热点授权检验方法、装置、存储介质和电子设备 | |
CN105357628A (zh) | 电子名片交换方法、装置及系统 | |
CN108235237A (zh) | 数据上报方法、装置、移动终端及计算机可读介质 | |
CN109165147A (zh) | 日志打印控制方法、装置、系统、后端服务器及前端设备 | |
CN110247823A (zh) | 一种故障检测方法、装置及相关设备 | |
CN108241616B (zh) | 消息推送方法和装置 | |
CN104424098B (zh) | 一种应用测试方法及装置 | |
CN108200546A (zh) | 数据上报方法、装置、移动终端及计算机可读介质 | |
CN106294748A (zh) | 一种桌面文件夹的展示方法以及终端 | |
EP2592536A1 (en) | Method and device for enabling keystroke acceleration | |
CN110532032A (zh) | 一种开机文件系统检测方法以及相关设备 | |
CN109936841A (zh) | 一种消息处理方法和装置 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180619 |