CN106888248A - 用于获取用户访问行为信息的方法及设备 - Google Patents
用于获取用户访问行为信息的方法及设备 Download PDFInfo
- Publication number
- CN106888248A CN106888248A CN201611230129.7A CN201611230129A CN106888248A CN 106888248 A CN106888248 A CN 106888248A CN 201611230129 A CN201611230129 A CN 201611230129A CN 106888248 A CN106888248 A CN 106888248A
- Authority
- CN
- China
- Prior art keywords
- service end
- identification information
- request
- terminal device
- static resource
- 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/50—Network services
- H04L67/535—Tracking the activity of the user
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- 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/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
Abstract
本发明的实施方式提供了一种用于获取用户访问行为信息的方法,包括:接收来自终端设备的用于访问预定静态资源的请求;在确定出请求中承载有注册用户信息及用于表征终端设备曾请求过预定静态资源的标识信息的情况下,根据预先存储的该标识信息的生成时间确定该注册用户访问服务端的最早访问时间;其中,预定静态资源与服务端主页处于同一域,且请求在用户通过终端设备访问服务端主页时产生并向服务端传输,该标识信息由服务端生成并提供给终端设备,且服务端提供给不同终端设备的标识信息不相同。本发明的实施方式能够更全面的获得用户访问行为信息,从而不但有利于为用户提供更精准的服务,而且有利于提高用户体验以及用户对应用和网站等的粘性。
Description
技术领域
本发明的实施方式涉及通信领域,更具体地,本发明的实施方式涉及用于获取用户访问行为信息的方法、用于获取用户访问行为信息的设备以及计算机可读存储介质。
背景技术
本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或者上下文。此处的描述不因为包括在本部分中就承认是现有技术。
用户可以通过其台式计算机、笔记型计算机、智能移动电话或者平板电脑等终端设备(也可以称为智能用户终端)中安装的APP(Application,应用,例如资讯类的网易新闻、购物类的淘宝以及社交类的微信等第三方应用)或者浏览器等客户端访问相应的服务端(如APP服务端或者网站等)。
目前,已经出现了需要获知包括用户最早访问服务端的时间在内的用户访问信息的需求,如在服务端分析用户行为的过程中,就需要确定出用户最早访问服务端的时间以及用户访问频率等用户访问信息,以便于服务端能够基于获取到的用户访问信息为用户提供更精准的服务;一个具体的例子:用户在其智能移动电话中安装了一款APP,且该用户在执行了注册行为而成为该APP的注册用户后,服务端可以通过获取该用户在注册前访问该APP服务端的用户访问信息确定是否需要向该用户推送新手指南等与新用户相关的信息。
发明内容
但是,在用户并未成为APP或者网站等的注册用户的情况下,虽然用户利用其终端设备中安装的APP或者浏览器等客户端可以对相应的服务端进行访问,然而,由于服务端无法对未注册用户进行有效区分,因此,服务端也就无法追踪到用户在注册之前的访问行为,从而无法获取到较为完整的用户访问行为信息。
因此,在现有技术中,在很多情况下,只有用户成为了注册用户之后才能够追踪到用户的访问行为,从而记录用户访问行为信息,而在用户成为注册用户之前,无法对用户的访问行为进行追踪,这是非常令人烦恼的过程。
为此,非常需要一种能够追踪到更完整的用户访问行为的技术方案,以避免无法获知较为全面的用户访问行为信息的现象,这不但有利于为用户提供更精准的服务,而且,有利于提高用户体验以及用户对应用和网站等的粘性。
在本上下文中,本发明的实施方式期望提供一种用于获取用户访问行为信息的方法、设备以及计算机可读存储介质。
在本发明实施方式的第一方面中,提供了一种用于获取用户访问行为信息的方法,包括:接收来自终端设备的用于访问预定静态资源的请求;在确定出所述请求中承载有注册用户信息以及用于表征所述终端设备曾请求过预定静态资源的标识信息的情况下,根据预先存储的所述标识信息的生成时间确定所述注册用户访问所述服务端的最早访问时间;其中,所述预定静态资源与所述服务端主页处于同一域,且所述请求在用户通过终端设备访问服务端主页时产生并向服务端传输,所述标识信息由服务端生成并提供给终端设备,且服务端提供给不同终端设备的标识信息不相同。
在本发明的一个实施例中,所述标识信息由服务端生成并提供给终端设备包括:所述标识信息由服务端生成并被作为被请求的预定静态资源的实体值ETag提供给终端设备。
在本发明的又一个实施例中,所述方法还包括:在确定出所述请求中未承载有用于表征所述终端设备曾请求过预定静态资源的标识信息的情况下,生成标识信息,存储所述标识信息和其生成时间,并向所述终端设备返回承载有预定静态资源和所述生成的标识信息的响应;其中,针对不同的未承载有标识信息的请求所生成的标识信息不相同。
在本发明的再一个实施例中,所述根据预先存储的所述标识信息的生成时间确定所述注册用户访问所述服务端的最早访问时间的步骤包括:在确定出预先存储有所述标识信息及其生成时间、所述标识信息不存在相关联的注册用户信息、且所述注册用户信息不存在相关联的标识信息的情况下,将所述请求中承载的注册用户信息和所述请求中承载的标识信息关联存储,并将预先存储的所述请求中承载的标识信息的生成时间作为所述注册用户访问所述服务端的最早访问时间。
在本发明的再一个实施例中,所述根据预先存储的所述标识信息的生成时间确定所述注册用户访问所述服务端的最早访问时间的步骤还包括:在确定出预先存储有所述标识信息及其生成时间、所述标识信息不存在相关联的注册用户信息、且所述注册用户信息存在关联的标识信息的情况下,将所述请求中承载的注册用户信息与所述请求中承载的标识信息关联存储,并将与所述注册用户信息相关联的所有标识信息中的最早生成时间作为所述注册用户访问所述服务端的最早访问时间。
在本发明的再一个实施例中,所述方法还包括:在确定出所述请求中承载有用于表征所述终端设备曾请求过预定静态资源的标识信息的情况下,向所述终端设备返回承载有指示终端设备使用本地缓存的预定静态资源的信息的响应。
在本发明实施方式的第二方面中,提供了一种用于获取用户访问行为信息的方法,包括:在用户通过终端设备访问服务端主页,且从所述终端设备本地存储信息中获取到用于表征所述终端设备曾请求过预定静态资源的标识信息以及注册用户信息的情况下,将所述标识信息以及注册用户信息承载于用于访问预定静态资源的请求中;向所述服务端发送所述请求;其中,所述预定静态资源与所述服务端主页处于同一域,所述标识信息由服务端生成并提供给终端设备存储,且不同终端设备中存储的标识信息不相同。
在本发明的一个实施例中,所述标识信息由服务端生成并提供给终端设备存储包括:所述标识由服务端生成,并被作为被请求的预定静态资源的实体值ETag提供给终端设备存储。
在本发明的又一个实施例中,所述将所述标识信息以及注册用户信息承载于用于访问预定静态资源的请求中的步骤包括:将所述预定静态资源的实体值ETag承载于基于超文本传输协议HTTP的请求的如果不匹配If-None-Match字段中,将所述注册用户信息承载于所述请求的储存在用户本地终端上的数据Cookie中。
在本发明的再一个实施例中,所述方法还包括:在确定出用户通过终端设备访问服务端主页,且从所述终端设备本地存储信息中未获取到用于表征所述终端设备曾请求过预定静态资源的标识信息的情况下,向所述服务端发送未承载有所述标识信息的用于访问预定静态资源的请求,以触发所述服务端生成标识信息,并存储所述标识信息及其生成时间;在接收到所述服务端返回的承载有所述标识信息以及预定静态资源的响应的情况下,在终端设备本地存储所述标识信息以及预定静态资源;其中,所述服务端存储的标识信息及其生成时间用于确定注册用户访问所述服务端的最早访问时间。
在本发明实施方式的第三方面中,提供了一种用于获取用户访问行为信息的设备,包括:接收请求模块,用于接收来自终端设备的用于访问预定静态资源的请求;确定访问时间模块,用于在确定出所述请求中承载有注册用户信息以及用于表征所述终端设备曾请求过预定静态资源的标识信息的情况下,根据预先存储的所述标识信息的生成时间确定所述注册用户访问所述服务端的最早访问时间;其中,所述预定静态资源与所述服务端主页处于同一域,且所述请求在用户通过终端设备访问服务端主页时产生并向服务端传输,所述标识信息由服务端生成并提供给终端设备,且服务端提供给不同终端设备的标识信息不相同。
在本发明的一个实施例中,所述标识信息由服务端生成并提供给终端设备包括:所述标识信息由服务端生成并被作为被请求的预定静态资源的实体值ETag提供给终端设备。
在本发明的又一个实施例中,所述设备还包括:第一响应模块,用于在确定出所述请求中未承载有用于表征所述终端设备曾请求过预定静态资源的标识信息的情况下,生成标识信息,存储所述标识信息和其生成时间,并向所述终端设备返回承载有预定静态资源和所述生成的标识信息的响应;其中,针对不同的未承载有标识信息的请求所生成的标识信息不相同。
在本发明的再一个实施例中,所述确定访问时间模块包括:第一子模块,用于在确定出预先存储有所述标识信息及其生成时间、所述标识信息不存在相关联的注册用户信息、且所述注册用户信息不存在相关联的标识信息的情况下,将所述请求中承载的注册用户信息和所述请求中承载的标识信息关联存储,并将预先存储的所述请求中承载的标识信息的生成时间作为所述注册用户访问所述服务端的最早访问时间。
在本发明的再一个实施例中,所述确定访问时间模块还包括:第二子模块,用于在确定出预先存储有所述标识信息及其生成时间、所述标识信息不存在相关联的注册用户信息、且所述注册用户信息存在关联的标识信息的情况下,将所述请求中承载的注册用户信息与所述请求中承载的标识信息关联存储,并将与所述注册用户信息相关联的所有标识信息中的最早生成时间作为所述注册用户访问所述服务端的最早访问时间。
在本发明的再一个实施例中,所述设备还包括:第二响应模块,用于在确定出所述请求中承载有用于表征所述终端设备曾请求过预定静态资源的标识信息的情况下,向所述终端设备返回承载有指示终端设备使用本地缓存的预定静态资源的信息的响应。
在本发明实施方式的第四方面中,提供了一种用于获取用户访问行为信息的设备,包括:请求模块,用于在用户通过终端设备访问服务端主页,且从所述终端设备本地存储信息中获取到用于表征所述终端设备曾请求过预定静态资源的标识信息以及注册用户信息的情况下,将所述标识信息以及注册用户信息承载于用于访问预定静态资源的请求中;发送模块,用于向所述服务端发送所述请求;其中,所述预定静态资源与所述服务端主页处于同一域,所述标识信息由服务端生成并提供给终端设备存储,且不同终端设备中存储的标识信息不相同。
在本发明的一个实施例中,所述标识信息由服务端生成并提供给终端设备存储包括:所述标识由服务端生成,并被作为被请求的预定静态资源的实体值ETag提供给终端设备存储。
在本发明的又一个实施例中,所述请求模块具体用于:将所述预定静态资源的实体值ETag承载于基于超文本传输协议HTTP的请求的如果不匹配If-None-Match字段中,将所述注册用户信息承载于所述请求的储存在用户本地终端上的数据Cookie中。
在本发明的再一个实施例中,所述请求模块还用于:在确定出用户通过终端设备访问服务端主页,且从所述终端设备本地存储信息中未获取到用于表征所述终端设备曾请求过预定静态资源的标识信息的情况下,向所述服务端发送未承载有所述标识信息的用于访问预定静态资源的请求,以触发所述服务端生成标识信息,并存储所述标识信息及其生成时间;且所述设备还包括:接收存储模块,用于在接收到所述服务端返回的承载有所述标识信息以及预定静态资源的响应的情况下,在终端设备本地存储所述标识信息以及预定静态资源;其中,所述服务端存储的标识信息及其生成时间用于确定注册用户访问所述服务端的最早访问时间。
在本发明实施方式的第五方面中,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现下述步骤:接收来自终端设备的用于访问预定静态资源的请求;在确定出所述请求中承载有注册用户信息以及用于表征所述终端设备曾请求过预定静态资源的标识信息的情况下,根据预先存储的所述标识信息的生成时间确定所述注册用户访问所述服务端的最早访问时间;其中,所述预定静态资源与所述服务端主页处于同一域,且所述请求在用户通过终端设备访问服务端主页时产生并向服务端传输,所述标识信息由服务端生成并提供给终端设备,且服务端提供给不同终端设备的标识信息不相同;
或者该程序被处理器执行时实现下述步骤:在用户通过终端设备访问服务端主页,且从所述终端设备本地存储信息中获取到用于表征所述终端设备曾请求过预定静态资源的标识信息以及注册用户信息的情况下,将所述标识信息以及注册用户信息承载于用于访问预定静态资源的请求中;向所述服务端发送所述请求;其中,所述预定静态资源与所述服务端主页处于同一域,所述标识信息由服务端生成并提供给终端设备存储,且不同终端设备中存储的标识信息不相同。
根据本发明实施方式的用于获取用户访问行为信息的方法、设备以及计算机可读存储介质,通过在服务端设置与服务端主页(如应用主页或者网站主页等)处于同一域的预定静态资源,并在用户通过终端设备访问服务端主页的情况下,将终端设备本地存储的用于表征终端设备曾请求过预定静态资源的标识信息以及注册用户信息承载于用于访问预定静态资源的请求中向服务端发送,由于该标识信息由服务端生成并记录有其生成时间,且服务端为来自不同终端设备的请求所生成的标识信息并不相同,因此,服务端完全可以利用该标识信息来区分各终端设备,从而在用户成为注册用户之后,本发明实施方式通过将请求中承载的由服务端之前生成的标识信息与服务端预先存储的其生成的各标识信息进行比对,就可以将注册用户通过终端设备对服务端的访问行为与用户未注册时通过终端设备对服务端的访问行为关联起来,从而本发明实施方式可以根据服务端预先存储的请求中承载的标识信息的生成时间方便快捷的确定出注册用户访问服务端的最早访问时间;由此可知,本发明实施方式能够追踪到注册用户在注册之前对服务端的访问行为,避免了无法获知注册用户较为完整的访问行为信息的现象,从而本发明实施方式能够更全面的获得用户访问行为信息,这不但有利于为用户提供更精准的服务,而且,有利于提高用户体验以及用户对应用和网站等的粘性。
附图说明
通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:
图1示意性地示出了根据本发明实施方式的可以在其中实现的应用场景示意图;
图2示意性地示出了根据本发明一实施方式的用于获取用户访问行为信息的方法的流程图;
图3示意性地示出了根据本发明又一实施方式的用于获取用户访问行为信息的方法的流程图;
图4示意性地示出了根据本发明再一实施方式的用于获取用户访问行为信息的设备的结构示意图;
图5示意性地示出了根据本发明再一实施方式的用于获取用户访问行为信息的设备的结构示意图;
图6示意性地示出了根据本发明再一实施例的计算机的结构示意图;
图7示意性地示出了根据本发明再一实施例的计算机可读存储介质的示意图。
在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
本领域技术技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或者计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
根据本发明的实施方式,提出了一种用于获取用户访问行为信息的方法和设备。
在本文中,需要理解的是,所涉及的术语用户访问行为信息是指由于用户使用其智能电子终端通过访问应用服务端或者网站等而产生的包括访问时间在内的访问行为信息。此外,附图中的任何元素数量均用于示例而并非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。
发明概述
本发明人发现,在用户未成为应用或者网站等的注册用户的情况下,虽然用户可以利用其终端设备中安装的应用或者浏览器等客户端对相应服务端进行访问,然而,由于服务端无法对未注册用户进行有效区分,因此,服务端也就无法追踪到用户在注册之前对服务端的访问行为,从而无法获取到较为完整的用户访问行为信息。而如果能够对用户成为注册用户之前的访问行为进行追踪,无疑可以获得更为完整的用户访问行为信息。
因此,针对现有技术中无法对用户成为注册用户之前的访问行为进行追踪这一状况,本发明实施方式提供了一种用于获取用户访问行为信息的方法及设备,通过在服务端设置与服务端主页(如应用主页或者网站主页等)处于同一域的预定静态资源,并在用户通过终端设备访问服务端主页的情况下,将终端设备本地存储的用于表征终端设备曾请求过预定静态资源的标识信息以及注册用户信息承载于用于访问预定静态资源的请求中向服务端发送,由于该标识信息由服务端生成并记录有其生成时间,且服务端为来自不同终端设备的请求所生成的标识信息并不相同,因此,服务端完全可以利用该标识信息来区分各终端设备,从而在用户成为注册用户之后,本发明实施方式通过将请求中承载的由服务端之前生成的标识信息与服务端预先存储的其生成的各标识信息进行比对,就可以将注册用户通过终端设备对服务端的访问行为与用户未注册时通过终端设备对服务端的访问行为关联起来,从而本发明实施方式可以根据服务端预先存储的请求中承载的标识信息的生成时间方便快捷准确的确定出注册用户访问服务端的最早访问时间;由此可知,本发明实施方式能够追踪到注册用户在注册之前对服务端进行访问的行为,避免了无法获知注册用户较为完整的访问行为信息的现象,从而本发明实施方式能够更全面的获得用户访问行为信息,这不但有利于为用户提供更精准的服务,而且,有利于提高用户体验以及用户对应用和网站等的粘性。
在介绍了本发明的基本原理之后,下面具体介绍本发明的各种非限制性实施方式。
应用场景总览
首先参考图1,示意性地示出了根据本发明实施方式的可以在其中实现的应用场景。
图1中,终端设备1、终端设备2、……终端设备n中均安装有第一应用客户端(如网易新闻APP等,本发明实施方式中的应用客户端也可以简称为应用)或者浏览器客户端(本发明实施方式中的浏览器客户端也可以简称为浏览器),不同的用户可以利用其终端设备(如上述终端设备1至终端设备n中的一个终端设备)中安装的第一应用客户端访问第一应用服务器(如网易新闻APP服务器等),且不同的用户也可以利用其终端设备中安装的浏览器客户端(如火狐浏览器等)访问第一网站服务器。
设定终端设备1(如智能移动电话)和终端设备2(如平板电脑)属于同一用户(下述称为第一用户);第一用户在其终端设备1和终端设备2中均安装了第一应用客户端,且第一用户在其终端设备中安装第一应用客户端之前并未访问过第一应用服务器,也不是第一应用的注册用户;第一用户在使用了终端设备1和终端设备2中的第一应用客户端一段时间后,利用终端设备1/终端设备2中安装的第一应用客户端执行了用户注册操作,从而第一用户成为第一应用的注册用户;利用本发明实施方式提供的技术方案可以方便快捷准确的确定出第一用户在未成为第一应用的注册用户之前,第一次访问第一应用服务器的访问时间,即针对第一应用服务器的最早访问时间。同样的,第一用户在使用终端设备1和终端设备2中的安装的浏览器客户端对第一网站服务器访问了一段时间后,利用终端设备1/终端设备2中安装的浏览器客户端执行了针对第一网站服务器的用户注册操作,从而第一用户成为第一网站的注册用户;利用本发明实施方式提供的技术方案可以方便快捷准确的确定出第一用户在未成为第一网站的注册用户之前,第一次访问第一网站服务器的访问时间,即针对第一网站的最早访问时间。
本发明实施方式可以针对用户使用一台或者多台终端设备对应用服务端/网站服务端进行访问这一实际场景,确定出该用户针对应用服务端/网站服务端的最早访问时间。然而,本领域技术人员完全可以理解,本发明实施方式的适用场景不受到该框架任何方面的限制。
示例性方法
下面结合图1所示的应用场景,参考图2以及图3来描述根据本发明示例性实施方式的用于获取用户访问行为信息的方法。需要注意的是,上述应用场景仅是为了便于理解本发明的精神和原理而示出,本发明的实施方式在此方面不受任何限制。相反,本发明的实施方式可以应用于适用的任何场景。
参见图2,示意性地示出了根据本发明一实施例的用于获取用户访问行为信息的方法的流程图,该方法通常在服务端处执行,具体的,该方法可以在应用服务端(如网易新闻应用服务器)或者网站服务端(如火狐浏览器服务器)处执行,且该方法可以包括下述步骤:
S200、接收来自终端设备的用于访问预定静态资源的请求。
作为示例,本发明实施方式中的预定静态资源与相应的服务端主页(如网易新闻服务端)处于同一域,且在用户通过其终端设备中安装的应用客户端或者浏览器客户端等工具请求访问服务端主页时,会同时产生用于访问预定静态资源的请求,并向该服务端发送该请求。
作为示例,本发明实施方式中的预定静态资源通常为不会显示在服务端主页中的静态资源,如服务端向终端设备推送的网站主页或者应用主页在终端设备中呈现时,展现的网站主页或者应用主页中页面中不会包含有预定静态资源的内容。本发明实施方式中的预定静态资源可以为CSS(Cascading Style Sheets,层叠样式表)或者JS(JavaScript,Java脚本,一种脚本语言)或者文本文档等,且预定静态资源的内容通常不会发生改变。本发明实施方式限制预定静态资源的具体表现形式。
作为示例,本发明实施方式中所接收到的来自终端设备的用于访问预定静态资源的请求存在如下四种不同的情况:
情况A、未承载有注册用户信息、且也未承载有用于表征该终端设备曾请求过预定静态资源的标识信息的请求;
情况B、承载有注册用户信息、且未承载有用于表征该终端设备曾请求过预定静态资源的标识信息的请求;
情况C、未承载有注册用户信息、且承载有用于表征该终端设备曾请求过预定静态资源的标识信息的请求;
情况D、承载有注册用户信息、且承载有用于表征该终端设备曾请求过预定静态资源的标识信息的请求。
在服务端接收到的请求属于上述情况A或者属于上述情况B时,到步骤S210;在服务端接收到的请求属于上述情况D时,到步骤S220;在服务端接收到的请求属于上述情况C时,到步骤S230。
作为示例,上述请求中的注册用户信息通常可以为Cookie(即储存在用户本地终端设备上的数据),由于本发明实施方式中的预定静态资源与服务端主页处于同一域,因此,用户基于该服务端的Cookie才能够被承载于用于访问预定静态资源的请求中。上述用于表征该终端设备曾请求过预定静态资源的标识信息通常可以作为该预定静态资源的ETag(被请求变量的实体值,即被请求的预定静态资源的实体值)而承载于请求中。当然,本发明实施方式也可以将标识信息在不作为预定静态资源的ETag的情况下承载于请求中;然而,无论用于表征该终端设备曾请求过预定静态资源的标识信息是否被作为ETag承载于请求中,该标识信息均是由服务端生成,并由服务端提供给终端设备,且该标识信息会和预定静态资源一起被缓存于终端设备本地,而且,只要终端设备本地缓存有该标识信息,则在由终端设备向服务端发送用于访问预定静态资源的请求时,就会将终端设备本地缓存的该标识信息承载于该请求中。
作为示例,下面将用于表征该终端设备曾请求过预定静态资源的标识信息作为ETag、且注册用户信息为Cookie为例,对本发明实施方式的下述各步骤进行详细说明,虽然本发明实施方式利用ETag以及Cookie可以使本发明实施方式中的各步骤的实现过程更加方便快捷,然而,这并不表示本发明实施方式必须使用ETag和Cookie。
S210、针对接收到的该请求生成标识信息,并存储生成的标识信息及其生成时间,并到步骤S211。
作为示例,本发明实施方式在确定出来自终端设备的用于访问预定静态资源的请求中未承载有用于表征该终端设备曾请求过预定静态资源的标识信息(如请求的If-None-Match(如果不匹配)字段中未承载有ETag),且该请求中并未承载有注册用户信息(如该请求中并未承载有Cookie)时,可以认为本次通过终端设备访问服务端主页的用户并未成为注册用户,且该用户首次通过该终端设备访问服务端主页。本发明实施方式在确定出来自终端设备的用于访问预定静态资源的请求中未承载有用于表征该终端设备曾请求过预定静态资源的标识信息(如该请求中的If-None-Match字段中未承载有ETag),且该请求中承载有注册用户信息(如该请求中承载有Cookie)时,可以认为本次通过终端设备访问服务端主页的用户为注册用户,且该注册用户首次通过该终端设备访问服务端主页。
作为示例,本发明实施方式会针对接收到的每一个未承载有ETag的用于访问预定静态资源的请求均生成一个随机数,并将该随机数作为ETag存储,同时还应存储ETag的生成时间,另外,还应向发送该请求的终端设备返回承载有预定静态资源和ETag的响应。本发明实施方式针对接收到的不同的未承载有ETag的请求所生成的随机数并不相同;换而言之,在相当长的一段时间内,一个ETag仅唯一对应一个请求,且一个请求也仅唯一对应一个ETag。
根据HTTP(HyperText Transfer Protocol,超文本传输协议)中的相关规定可知,终端设备请求获得的静态资源及其对应的ETag应缓存在终端设备本地,且再次由终端设备向服务端发送用于访问预定静态资源的请求时,应在该请求中携带终端设备本地缓存的ETag,从而再次由终端设备向服务端发送的请求是属于上述情况C的请求;另外,如果终端设备本地缓存有与该预定静态资源处于同一域的服务端对应的Cookie,则不仅应在该请求中携带本地缓存的ETag,还应在该请求中携带Cookie,从而再次由终端设备向服务端发送的请求属于上述情况D的请求。由此可知,由于在用户通过其终端设备第一次访问该服务端时,本发明实施方式才会向该服务端发送未承载有用于表征该终端设备曾请求过预定静态资源的标识信息,而在终端设备从接收到的响应中获取ETag及预订静态资源后,再次发送的用于访问预定静态资源的请求中会携带有终端设备本地缓存的ETag,使服务端不会再针对请求生成ETag,因此,本发明实施方式中的一个ETag通常仅对应一个终端设备,一个终端设备也仅对应一个ETag。
S211、向发送该请求的终端设备返回承载有预定静态资源和上述生成的标识信息的响应,如向发送该请求的终端设备返回承载有预定静态资源和ETag的响应。
S220、根据服务端预先存储的标识信息的生成时间确定注册用户访问服务端的最早访问时间。
作为示例,本发明实施方式在确定出来自终端设备的用于访问预定静态资源的请求中承载有用于表征该终端设备曾请求过预定静态资源的标识信息(如该请求中的If-None-Match字段中承载有ETag),且该请求中承载有注册用户信息(如该请求中承载有Cookie)时,可以认为本次通过终端设备访问服务端主页的用户为注册用户,且该用户曾经通过该终端设备访问过服务端主页。
作为示例,本发明实施方式可以根据服务端本地存储的标识信息与注册用户信息的实际关联情况,将相应的标识信息的生成时间作为注册用户访问服务端的最早访问时间。
一个具体的例子,本发明实施方式在确定出服务端预先存储有请求中承载的标识信息及其生成时间、该请求中承载的标识信息并不存在相关联的注册用户信息、且请求中承载的注册用户信息存在相关联的标识信息的情况下,可以认为该用户曾经使用过其他终端设备访问过该服务端主页,且服务端已经确定出该注册用户使用其他终端设备对服务端进行访问的最早访问时间。本次应验证该用户使用本终端设备对服务端进行访问的最早访问时间是否可以作为该注册用户访问服务端的最早访问时间,如本发明实施方式可以将请求中承载的注册用户信息与请求中承载的标识信息关联存储,并将与该注册用户信息相关联的所有标识信息中的最早生成时间作为该注册用户访问该服务端的最早访问时间。
更具体而言,本发明实施方式应建立请求中承载的注册用户信息与请求中承载的标识信息的关联关系,如利用请求中承载的标识信息(如请求中的If-None-Match字段中的ETag)在服务端本地存储的包含有所有ETag及其生成时间的集合中进行查找,并在查找到的匹配记录中增加请求中承载的Cookie或者对Cookie进行解密处理后的注册用户信息;之后,可以从该集合中查找与请求中承载的Cookie或者对Cookie进行解密处理后的注册用户信息匹配的所有记录,并比较所有匹配记录中的ETag的生成时间,将最早生成时间作为该注册用户访问该服务端的最早访问时间。
另一个具体的例子:本发明实施方式在确定出服务端预先存储有请求中承载的标识信息及其生成时间、请求中承载的标识信息并不存在相关联的注册用户信息、且请求中承载的注册用户信息也不存在相关联的标识信息的情况下,可以认为该用户未曾经使用过其他终端设备访问过该服务端主页。本次可以将该用户使用本终端设备对服务端主页进行访问的最早访问时间作为该注册用户访问该服务端的最早访问时间,如本发明实施方式可以将请求中承载的注册用户信息和请求中承载的标识信息关联存储,并将预先存储的请求中承载的标识信息的生成时间作为注册用户访问服务端的最早访问时间。
更具体而言,本发明实施方式应建立请求中承载的注册用户信息与请求中承载的标识信息的关联关系,如利用请求中承载的标识信息(如请求中的If-None-Match字段中的ETag)在服务端本地存储的包含有所有ETag及其生成时间的集合中进行查找,并在查找到的匹配记录中增加请求中承载的Cookie或者对Cookie进行解密处理后的注册用户信息;之后,将该条匹配记录中的ETag的生成时间作为该注册用户访问该服务端的最早访问时间。
另外,本发明实施方式可以到步骤S230,向发送该请求的终端设备返回承载有指示终端设备使用本地缓存的预定静态资源的信息的响应。
作为示例,本发明实施方式在确定出服务端预先存储有请求中承载的标识信息及其生成时间,且请求中承载的标识信息已经与请求中承载的注册用户信息相关联的情况下,可以认为该用户曾经使用过该终端设备访问过该服务端主页,且已经基于该请求中承载的标识信息以及注册用户信息执行了确定该注册用户访问服务端的最早访问时间,本次不需要重新基于该请求中承载的标识信息以及注册用户信息执行确定该注册用户访问服务端的最早访问时间的操作了,可以到步骤S230,向发送该请求的终端设备返回承载有指示终端设备使用本地缓存的预定静态资源的信息的响应。
S230、向发送该请求的终端设备返回承载有指示终端设备使用本地缓存的预定静态资源的信息的响应,例如向终端设备返回承载有状态码304的响应,以表示预定静态资源没有发生变化,可以使用终端设备本地缓存的预定静态资源。
作为示例,本发明实施方式在确定出来自终端设备的用于访问预定静态资源的请求中承载有用于表征该终端设备曾请求过预定静态资源的标识信息(如该请求中的If-None-Match字段中承载有ETag),且该请求中并未承载有注册用户信息(如该请求中并未承载有Cookie)时,可以认为本次通过终端设备访问服务端主页的用户并未成为注册用户,且该用户已经通过其终端设备访问过服务端主页。本发明实施方式可以直接到步骤S230,如向终端设备返回承载有状态码304的响应,以表示预定静态资源没有发生变化,可以使用终端设备本地缓存的预定静态资源。
需要特别说明的是,本发明实施方式在每次接收到承载有标识信息(如ETag)且未承载有注册用户信息的用于访问预定静态资源的请求时,均可以记录该请求的接收时间,如在本地存储的标识信息的记录中添加该请求的接收时间,从而本发明实施方式除了可以追踪到注册用户在执行注册操作之前对服务端进行访问的最早访问时间之外,还可以追踪到注册用户在执行注册操作之前,每次对服务端进行访问的访问时间,进而本发明实施方式可以进一步全面的获取到针对服务端的用户访问行为信息,如通过利用记录的访问时间可以统计出用户在一段时间内的访问频度或者最近一段时间内是否访问过服务端等。
参见图3,示意性地示出了根据本发明一实施例的用于获取用户访问行为信息的方法流程图,该方法通常在终端设备处执行,具体的,该方法可以在应用客户端(如网易新闻应用客户端)或者浏览器客户端(如火狐浏览器客户端)处执行,且该方法具体可以包括下述步骤:
S300、在用户通过终端设备访问服务端主页,且从终端设备本地存储信息中获取到用于表征终端设备曾请求过预定静态资源的标识信息以及注册用户信息的情况下,将获得到的标识信息以及注册用户信息承载于用于访问预定静态资源的请求中。
作为示例,终端设备本地存储的标识信息是由服务端生成并提供给终端设备存储的,如终端设备在接收到来自服务端的承载有ETag以及预定静态资源的响应时,将响应中承载的ETag以及预定静态资源本地缓存,从而在形成用于访问服务端主页的请求的同时,本发明实施方式会形成用于访问预定静态资源的请求,且在终端设备本地缓存有注册用户信息(如Cookie)的情况下,用于访问预定静态资源的请求中的If-None-Match字段中承载有ETag,且用于访问预定静态资源的请求还承载有Cookie;而在终端设备本地未缓存有注册用户信息(如Cookie)的情况下,用于访问预定静态资源的请求中的If-None-Match字段中承载有ETag,且用于访问预定静态资源的请求中不会承载有Cookie。
作为示例,在用户通过终端设备访问服务端主页,且终端设备本地未缓存有ETag的情况下,本发明实施方式所形成的用于访问预定静态资源的请求中不会承载有ETag,从而服务端在接收到该请求后,会针对该请求生成成ETag,在服务端本地存储该ETag及其生成时间,同时,还会将ETag和预定静态资源通过响应返回给终端设备,以便于终端设备可以缓存响应中承载的ETag和预定静态资源。
S310、向上述服务端发送该用于访问预定静态资源的请求,以便于在服务端,可以根据请求中承载的上述标识(如ETag)和注册用户信息(如Cookie)确定出注册用户访问服务端的最早访问时间。
下面结合上述图1所示的应用场景,对本发明实施方式的一个具体例子进行说明。
第一用户在未注册前,使用终端设备1首次访问第一应用服务器/第一网站服务器(即第一应用主页/第一网站主页)时,向第一应用服务器/第一网站服务器发送用于访问与第一应用主页/第一网站主页处于同一域的预定静态资源的请求,由于终端设备1中未缓存有该预定静态资源的ETag,因此该请求中未承载有ETag,从而第一应用服务器/第一网站服务器生成ETag(下述称为ETag1),并在服务器本地存储ETag1及其生成时间(下述称为第一时间),同时,向终端设备1返回承载有ETag1和预定静态资源的响应,使终端设备1缓存该响应中的ETag1和预定静态资源;
第一用户在未注册前,使用终端设备2首次访问第一应用服务器/第一网站服务器(即第一应用主页/第一网站主页)时,向第一应用服务器/第一网站服务器发送用于访问与第一应用主页/第一网站主页处于同一域的预定静态资源的请求,由于终端设备2中未缓存有该预定静态资源的ETag,因此该请求中未承载有ETag,从而第一应用服务器/第一网站服务器生成ETag(下述称为ETag2),并在服务器本地存储ETag2及其生成时间(下述称为第二时间),同时,向终端设备2返回承载有ETag2和预定静态资源的响应,使终端设备2缓存该响应中的ETag2和预定静态资源;上述ETag1和ETag2不相同;
之后,第一用户在未注册前,再次使用终端设备1访问第一应用服务器/第一网站服务器时,由于终端设备1中缓存有该预定静态资源的ETag1,因此,由终端设备1向第一应用服务器/第一网站服务器发送的用于访问预定静态资源的请求中承载有ETag1,从而第一应用服务器/第一网站服务器直接向终端设备1返回承载有状态码304的响应,以表示预定静态资源没有发生变化,可以使用终端设备1本地缓存的预定静态资源;同样的,第一用户在未注册前,再次使用终端设备2访问第一应用服务器/第一网站服务器时,由于终端设备2中缓存有该预定静态资源的ETag2,因此,由终端设备2向第一应用服务器/第一网站服务器发送的用于访问预定静态资源的请求中承载有ETag2,从而第一应用服务器/第一网站服务器直接向终端设备2返回承载有状态码304的响应,以表示预定静态资源没有发生变化,可以使用终端设备2本地缓存的预定静态资源;
在第一用户成为注册用户后,设定第一用户首先使用终端设备1访问第一应用服务器/第一网站服务器;在第一用户使用终端设备1访问第一应用服务器/第一网站服务器时,会将ETag1以及Cookie承载于用于访问预定静态资源的请求中,并向第一应用服务器/第一网站服务器发送该请求;在第一应用服务器/第一网站服务器接收到该请求时,本发明实施方式可以判断第一应用服务器/第一网站服务器本地存储的ETag1是否存在与其相关联的Cookie以及请求中承载的Cookie是否存在与其相关联的ETag,在确定出ETag1不存在相关联的Cookie,且请求中承载的Cookie不存在相关联的ETag时,将ETag1与请求中承载的Cookie相关联,并将本地存储的ETag1的生成时间确定为该注册用户访问第一应用服务器/第一网站服务器的最早访问时间,同时,还应向终端设备1返回承载有状态码304的响应,以表示预定静态资源没有发生变化,可以使用终端设备1本地缓存的预定静态资源;
在第一用户成为注册用户后,在第一用户使用终端设备2访问第一应用服务器/第一网站服务器时,会将ETag2以及Cookie承载于用于访问预定静态资源的请求中,并向第一应用服务器/第一网站服务器发送该请求;在第一应用服务器/第一网站服务器接收到该请求时,本发明实施方式可以判断第一应用服务器/第一网站服务器本地存储的ETag2是否存在与其相关联的Cookie以及请求中承载的Cookie是否存在与其相关联的ETag,由于请求中承载的Cookie已经与ETag1相关联,因此,本次判断出ETag2不存在相关联的Cookie,然而请求中承载的Cookie与ETag1相关联,本发明实施方式应将ETag2与请求中承载的Cookie相关联,并比较ETag1和ETag2的生成时间,将生成时间早的ETag的生成时间作为该注册用户访问第一应用服务器/第一网站服务器的最早访问时间,同时,本发明实施方式还应向终端设备2返回承载有状态码304的响应,以表示预定静态资源没有发生变化,可以使用终端设备2本地缓存的预定静态资源。
示例性设备
在介绍了本发明示例性实施方式的方法之后,接下来,参考图4和图5对本发明示例性实施方式的用于获取用户访问行为信息的设备进行说明。
图4中,本发明一实施方式的用于获取用户访问行为信息的设备可以设置于应用服务端或者网站服务端中,如该设备设置于应用服务器中或者设置于浏览器服务器中等,且该设备主要包括:接收请求模块400以及确定访问时间模块410;可选的,该设置还可以包括:第一响应模块420以及第二响应模块430。
接收请求模块400主要用于接收来自终端设备的用于访问预定静态资源的请求。
作为示例,本发明实施方式中的预定静态资源请参见上述方法实施方式中的描述,在此不再重复说明。接收请求模块400所接收到的来自终端设备的用于访问预定静态资源的请求存在上述方法实施方式中记载的情况A、情况B、情况C以及情况D这四种不同的情况,且请求中的标识信息以及注册用户信息的具体表现形式如上述方法实施方式中的记载,在此不再重复说明。
作为示例,接收请求模块400接收到的请求中承载的标识信息由服务端生成,并由服务端提供给终端设备,且该标识信息会和预定静态资源一起被缓存于终端设备本地,而且,只要终端设备本地缓存有该标识信息,则在由终端设备向服务端发送用于访问预定静态资源的请求时,就会将终端设备本地缓存的该标识信息承载于该请求中。
作为示例,下面将用于表征该终端设备曾请求过预定静态资源的标识信息作为ETag、且注册用户信息为Cookie为例,对本发明实施方式的下述各模块进行详细说明,虽然本发明实施方式利用ETag以及Cookie可以使本设备的实现过程更加方便快捷,然而,这并不表示本发明实施方式必须使用ETag和Cookie。
第一响应模块420主要用于在确定出请求中未承载有用于表征终端设备曾请求过预定静态资源的标识信息的情况下,生成标识信息,存储标识信息和其生成时间,并向终端设备返回承载有预定静态资源和生成的标识信息的响应。
作为示例,第一响应模块420在确定出来自终端设备的用于访问预定静态资源的请求中未承载有用于表征该终端设备曾请求过预定静态资源的标识信息(如请求的If-None-Match字段中未承载有ETag),且该请求中并未承载有注册用户信息(如该请求中并未承载有Cookie)时,第一响应模块420可以认为本次通过终端设备访问服务端主页的用户并未成为该服务端的注册用户,且该用户首次通过该终端设备访问服务端主页。第一响应模块420在确定出来自终端设备的用于访问预定静态资源的请求中未承载有用于表征该终端设备曾请求过预定静态资源的标识信息(如该请求中的If-None-Match字段中未承载有ETag),且该请求中承载有注册用户信息(如该请求中承载有Cookie)时,可以认为本次通过终端设备访问服务端主页的用户为注册用户,且该注册用户首次通过该终端设备访问服务端主页。
作为示例,第一响应模块420会针对接收到的每一个未承载有ETag的用于访问预定静态资源的请求均生成一个随机数,并将该随机数作为ETag存储,同时还应存储ETag的生成时间,另外,第一响应模块420还应向发送该请求的终端设备返回承载有预定静态资源和ETag的响应。第一响应模块420针对接收到的不同的未承载有ETag的请求所生成的随机数并不相同;换而言之,在相当长的一段时间内,一个ETag仅唯一对应一个请求,且一个请求也仅唯一对应一个ETag。
根据HTTP中的相关规定可知,终端设备请求获得的静态资源及其对应的ETag应缓存在终端设备本地,且再次由终端设备向服务端发送用于访问预定静态资源的请求时,应在该请求中携带终端设备本地缓存的ETag,从而再次由终端设备向服务端发送的请求是属于上述情况C的请求;另外,如果终端设备本地缓存有与该预定静态资源处于同一域的服务端对应的Cookie,则不仅应在该请求中携带本地缓存的ETag,还应在该请求中携带Cookie,从而再次由该终端设备向该服务端发送的请求属于上述情况D的请求。由此可知,由于在用户通过其终端设备第一次访问该服务端时,本发明实施方式才会向该服务端发送未承载有用于表征该终端设备曾请求过预定静态资源的标识信息,而在终端设备从接收到的响应中获取ETag及预订静态资源后,再次发送的用于访问预定静态资源的请求中会携带有终端设备本地缓存的ETag,使服务端不会再针对请求生成ETag,因此,本发明实施方式中的一个ETag通常仅对应一个终端设备,一个终端设备也仅对应一个ETag。
第二响应模块430主要用于在确定出请求中承载有用于表征终端设备曾请求过预定静态资源的标识信息的情况下,向终端设备返回承载有指示终端设备使用本地缓存的预定静态资源的信息的响应,如第二响应模块430向终端设备返回承载有状态码304的响应,以表示预定静态资源没有发生变化,可以使用终端设备本地缓存的预定静态资源。
作为示例,第二响应模块430在确定出来自终端设备的用于访问预定静态资源的请求中承载有用于表征该终端设备曾请求过预定静态资源的标识信息(如该请求中的If-None-Match字段中承载有ETag),且该请求中并未承载有注册用户信息(如该请求中并未承载有Cookie)时,可以认为本次通过终端设备访问服务端主页的用户并未成为注册用户,且该用户已经通过其终端设备访问过服务端主页,可以直接向终端设备返回承载有状态码304的响应,以表示预定静态资源没有发生变化,可以使用终端设备本地缓存的预定静态资源。
确定访问时间模块410主要用于在确定出接收请求模块400接收到的请求中承载有注册用户信息以及用于表征终端设备曾请求过预定静态资源的标识信息的情况下,根据预先存储的标识信息的生成时间确定注册用户访问服务端的最早访问时间。确定访问时间模块410可以具体包括:第一子模块以及第二子模块,其中的第一子模块主要用于在确定出预先存储有标识信息及其生成时间、标识信息不存在相关联的注册用户信息、且注册用户信息不存在相关联的标识信息的情况下,将请求中承载的注册用户信息和请求中承载的标识信息关联存储,并将预先存储的该请求中承载的标识信息的生成时间作为注册用户访问服务端的最早访问时间;其中的第二子模块主要用于在确定出预先存储有标识信息及其生成时间、标识信息不存在相关联的注册用户信息、且注册用户信息存在关联的标识信息的情况下,将请求中承载的注册用户信息与请求中承载的标识信息关联存储,并将与注册用户信息相关联的所有标识信息中的最早生成时间作为注册用户访问服务端的最早访问时间。
作为示例,确定访问时间模块410在确定出来自终端设备的用于访问预定静态资源的请求中承载有用于表征该终端设备曾请求过预定静态资源的标识信息(如该请求中的If-None-Match字段中承载有ETag),且该请求中承载有注册用户信息(如该请求中承载有Cookie)时,可以认为本次通过终端设备访问服务端主页的用户为注册用户,且该用户曾经通过该终端设备访问过服务端主页。
作为示例,确定访问时间模块410可以根据服务端本地存储的标识信息与注册用户信息的实际关联情况,将相应的标识信息的生成时间作为注册用户访问服务端的最早访问时间。
一个具体的例子,确定访问时间模块410(如第二子模块)在确定出服务端预先存储有请求中承载的标识信息及其生成时间、该请求中承载的标识信息并不存在相关联的注册用户信息、且请求中承载的注册用户信息存在相关联的标识信息的情况下,可以认为该用户曾经使用过其他终端设备访问过该服务端主页,且服务端已经确定出该注册用户使用其他终端设备对服务端进行访问的最早访问时间。第二子模块本次应验证该用户使用本终端设备对服务端进行访问的最早访问时间是否可以作为该注册用户访问服务端的最早访问时间,如第二子模块可以将请求中承载的注册用户信息与请求中承载的标识信息关联存储,并将与该注册用户信息相关联的所有标识信息中的最早生成时间作为该注册用户访问该服务端的最早访问时间。
更具体而言,第二子模块应建立请求中承载的注册用户信息与请求中承载的标识信息的关联关系,如第二子模块利用请求中承载的标识信息(如请求中的If-None-Match字段中的ETag)在服务端本地存储的包含有所有ETag及其生成时间的集合中进行查找,并在查找到的匹配记录中增加请求中承载的Cookie或者对Cookie进行解密处理后的注册用户信息;之后,第二子模块可以从该集合中查找与请求中承载的Cookie或者对Cookie进行解密处理后的注册用户信息匹配的所有记录,并比较所有匹配记录中的ETag的生成时间,第二子模块将最早生成时间作为该注册用户访问该服务端的最早访问时间。
另一个具体的例子:确定访问时间模块410(如第一子模块)在确定出服务端预先存储有请求中承载的标识信息及其生成时间、请求中承载的标识信息并不存在相关联的注册用户信息、且请求中承载的注册用户信息也不存在相关联的标识信息的情况下,可以认为该用户未曾经使用过其他终端设备访问过该服务端主页。第一子模块可以将该用户使用本终端设备对服务端主页进行访问的最早访问时间作为该注册用户访问服务端的最早访问时间,如第一子模块可以将请求中承载的注册用户信息和请求中承载的标识信息关联存储,并将预先存储的请求中承载的标识信息的生成时间作为注册用户访问服务端的最早访问时间。
更具体而言,第一子模块应建立请求中承载的注册用户信息与请求中承载的标识信息的关联关系,如第一子模块利用请求中承载的标识信息(如请求中的If-None-Match字段中的ETag)在服务端本地存储的包含有所有ETag及其生成时间的集合中进行查找,并在查找到的匹配记录中增加请求中承载的Cookie或者对Cookie进行解密处理后的注册用户信息;之后,第一子模块将该条匹配记录中的ETag的生成时间作为该注册用户访问该服务端的最早访问时间。另外,第二响应模块430还应向发送该请求的终端设备返回承载有指示终端设备使用本地缓存的预定静态资源的信息的响应。
作为示例,确定访问时间模块410在确定出服务端预先存储有请求中承载的标识信息及其生成时间,且请求中承载的标识信息已经与请求中承载的注册用户信息相关联的情况下,确定访问时间模块410可以认为该用户曾经使用过该终端设备访问过该服务端主页,且已经基于该请求中承载的标识信息以及注册用户信息执行了确定该注册用户访问服务端的最早访问时间,确定访问时间模块410本次不需要重新基于该请求中承载的标识信息以及注册用户信息执行确定该注册用户访问服务端的最早访问时间的操作了,可以由第二响应模块430向发送该请求的终端设备返回承载有指示终端设备使用本地缓存的预定静态资源的信息的响应。
需要特别说明的是,确定访问时间模块410在接收请求模块400每次接收到承载有标识信息(如ETag)且未承载有注册用户信息的用于访问预定静态资源的请求时,均可以记录该请求的接收时间,如确定访问时间模块410在服务端本地存储的标识信息的记录中添加该请求的接收时间,从而确定访问时间模块410除了可以追踪到注册用户在执行注册操作之前对服务端进行访问的最早访问时间之外,还可以追踪到注册用户在执行注册操作之前,每次对服务端进行访问的访问时间,进而确定访问时间模块410可以进一步全面的获取到针对服务端的用户访问行为信息,如确定访问时间模块410通过利用记录的访问时间可以统计出用户在一段时间内的访问频度或者最近一段时间内是否访问过服务端等。
图5中,本发明一实施方式的用于获取用户访问行为信息的设备可以设置于终端设备中,如设置于应用客户端中或者设置于浏览器客户端中等,且该设备主要包括:请求模块500以及发送模块510;可选的,该设备还可以包括:接收存储模块520。
请求模块500主要用于在用户通过终端设备访问服务端主页,且从终端设备本地存储信息中获取到用于表征终端设备曾请求过预定静态资源的标识信息以及注册用户信息的情况下,将标识信息以及注册用户信息承载于用于访问预定静态资源的请求中。
发送模块510主要用于向服务端发送上述请求模块500所形成的上述请求,以便于在服务端,可以根据请求中承载的上述标识(如ETag)和注册用户信息(如Cookie)确定出注册用户访问服务端的最早访问时间。
接收存储模块520主要用于在接收到服务端返回的承载有标识信息以及预定静态资源的响应的情况下,在终端设备本地存储标识信息以及预定静态资源。
作为示例,终端设备本地存储的标识信息是由服务端生成并提供给终端设备存储的,如接收存储模块520在接收到来自服务端的承载有ETag以及预定静态资源的响应时,接收存储模块520将响应中承载的ETag以及预定静态资源缓存在终端设备本地,从而在形成用于访问服务端主页的请求的同时,请求模块500会形成用于访问预定静态资源的请求,且在终端设备本地缓存有注册用户信息(如Cookie)的情况下,请求模块500所形成的用于访问预定静态资源的请求中的If-None-Match字段中承载有ETag,且请求模块500所形成的用于访问预定静态资源的请求还承载有Cookie;而在终端设备本地未缓存有注册用户信息(如Cookie)的情况下,请求模块500所形成的用于访问预定静态资源的请求中的If-None-Match字段中承载有ETag,且请求模块500所形成的用于访问预定静态资源的请求中不会承载有Cookie。
作为示例,在用户通过终端设备访问服务端主页,且终端设备本地未缓存有ETag的情况下,请求模块500所形成的用于访问预定静态资源的请求中不会承载有ETag,从而服务端在接收到该请求后,会针对该请求生成成ETag,在服务端本地存储该ETag及其生成时间,同时,还会将ETag和预定静态资源通过响应返回给终端设备,以便于终端设备中的接收存储模块520可以在终端设备本地缓存响应中承载的ETag和预定静态资源。
图6示出了适于用来实现本发明实施方式的示例性计算机系统/服务器60的框图。图6显示的计算机系统/服务器60仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图6所示,计算机系统/服务器60以通用计算设备的形式表现。计算机系统/服务器60的组件可以包括但不限于:一个或者多个处理器或者处理单元601,系统存储器602,连接不同系统组件(包括系统存储器602和处理单元601)的总线603。
总线603表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机系统/服务器60典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器60访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器602可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)6021和/或高速缓存存储器6022。计算机系统/服务器60可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,ROM6023可以用于读写不可移动的、非易失性磁介质(图6中未显示,通常称为“硬盘驱动器”)。尽管未在图6中示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线603相连。系统存储器602中可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块6024的程序/实用工具6025,可以存储在例如存储器602中,这样的程序模块6024包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块6024通常执行本发明所描述的实施例中的功能和/或方法。
计算机系统/服务器60也可以与一个或多个外部设备604(如键盘、指向设备、显示器等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器60交互的设备通信,和/或与使得该计算机系统/服务器60能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口605进行。并且,计算机系统/服务器60还可以通过网络适配器606与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图6所示,网络适配器606通过总线603与计算机系统/服务器60的其它模块(如处理单元601等)通信。应当明白,尽管图6中未示出,可以结合计算机系统/服务器60使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元601通过运行存储在系统存储器602中的程序,从而执行各种功能应用及数据处理,例如执行并实现用于获取用户访问行为信息的方法。
本发明实施方式的计算机可读存储介质一个具体例子如图7所示。
图7的计算机可读存储介质为光盘70,其上存储有计算机程序(即程序产品),该程序被处理器执行时,会实现上述方法实施方式中所记载的各步骤,在此不再重复说明。
应当注意,尽管在上文详细描述中提及了用于获取用户访问行为信息的设备的若干装置或子装置,但是这种划分仅仅并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多装置的特征和功能可以在一个装置中具体化。反之,上文描述的一个装置的特征和功能可以进一步划分为由多个装置来具体化。
此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。
Claims (10)
1.一种方法,在服务端处执行,且所述方法包括:
接收来自终端设备的用于访问预定静态资源的请求;
在确定出所述请求中承载有注册用户信息以及用于表征所述终端设备曾请求过预定静态资源的标识信息的情况下,根据预先存储的所述标识信息的生成时间确定所述注册用户访问所述服务端的最早访问时间;
其中,所述预定静态资源与所述服务端主页处于同一域,且所述请求在用户通过终端设备访问服务端主页时产生并向服务端传输,所述标识信息由服务端生成并提供给终端设备,且服务端提供给不同终端设备的标识信息不相同。
2.如权利要求1所述的方法,所述标识信息由服务端生成并提供给终端设备包括:所述标识信息由服务端生成并被作为被请求的预定静态资源的实体值ETag提供给终端设备。
3.如权利要求1或2所述的方法,所述方法还包括:
在确定出所述请求中未承载有用于表征所述终端设备曾请求过预定静态资源的标识信息的情况下,生成标识信息,存储所述标识信息和其生成时间,并向所述终端设备返回承载有预定静态资源和所述生成的标识信息的响应;
其中,针对不同的未承载有标识信息的请求所生成的标识信息不相同。
4.如权利要求1或2所述的方法,所述根据预先存储的所述标识信息的生成时间确定所述注册用户访问所述服务端的最早访问时间的步骤包括:
在确定出预先存储有所述标识信息及其生成时间、所述标识信息不存在相关联的注册用户信息、且所述注册用户信息不存在相关联的标识信息的情况下,将所述请求中承载的注册用户信息和所述请求中承载的标识信息关联存储,并将预先存储的所述请求中承载的标识信息的生成时间作为所述注册用户访问所述服务端的最早访问时间。
5.如权利要求1或2所述的方法,所述根据预先存储的所述标识信息的生成时间确定所述注册用户访问所述服务端的最早访问时间的步骤还包括:
在确定出预先存储有所述标识信息及其生成时间、所述标识信息不存在相关联的注册用户信息、且所述注册用户信息存在关联的标识信息的情况下,将所述请求中承载的注册用户信息与所述请求中承载的标识信息关联存储,并将与所述注册用户信息相关联的所有标识信息中的最早生成时间作为所述注册用户访问所述服务端的最早访问时间。
6.如权利要求1或2所述的方法,所述方法还包括:
在确定出所述请求中承载有用于表征所述终端设备曾请求过预定静态资源的标识信息的情况下,向所述终端设备返回承载有指示终端设备使用本地缓存的预定静态资源的信息的响应。
7.一种方法,在终端设备处执行,且所述方法包括:
在用户通过终端设备访问服务端主页,且从所述终端设备本地存储信息中获取到用于表征所述终端设备曾请求过预定静态资源的标识信息以及注册用户信息的情况下,将所述标识信息以及注册用户信息承载于用于访问预定静态资源的请求中;
向所述服务端发送所述请求;
其中,所述预定静态资源与所述服务端主页处于同一域,所述标识信息由服务端生成并提供给终端设备存储,且不同终端设备中存储的标识信息不相同。
8.一种设备,设置于服务端,且所述设备包括:
接收请求模块,用于接收来自终端设备的用于访问预定静态资源的请求;
确定访问时间模块,用于在确定出所述请求中承载有注册用户信息以及用于表征所述终端设备曾请求过预定静态资源的标识信息的情况下,根据预先存储的所述标识信息的生成时间确定所述注册用户访问所述服务端的最早访问时间;
其中,所述预定静态资源与所述服务端主页处于同一域,且所述请求在用户通过终端设备访问服务端主页时产生并向服务端传输,所述标识信息由服务端生成并提供给终端设备,且服务端提供给不同终端设备的标识信息不相同。
9.一种设备,设置于终端设备中,且所述设备包括:
请求模块,用于在用户通过终端设备访问服务端主页,且从所述终端设备本地存储信息中获取到用于表征所述终端设备曾请求过预定静态资源的标识信息以及注册用户信息的情况下,将所述标识信息以及注册用户信息承载于用于访问预定静态资源的请求中;
发送模块,用于向所述服务端发送所述请求;
其中,所述预定静态资源与所述服务端主页处于同一域,所述标识信息由服务端生成并提供给终端设备存储,且不同终端设备中存储的标识信息不相同。
10.一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现下述步骤:
接收来自终端设备的用于访问预定静态资源的请求;
在确定出所述请求中承载有注册用户信息以及用于表征所述终端设备曾请求过预定静态资源的标识信息的情况下,根据预先存储的所述标识信息的生成时间确定所述注册用户访问所述服务端的最早访问时间;
其中,所述预定静态资源与所述服务端主页处于同一域,且所述请求在用户通过终端设备访问服务端主页时产生并向服务端传输,所述标识信息由服务端生成并提供给终端设备,且服务端提供给不同终端设备的标识信息不相同;
或者该程序被处理器执行时实现下述步骤:
在用户通过终端设备访问服务端主页,且从所述终端设备本地存储信息中获取到用于表征所述终端设备曾请求过预定静态资源的标识信息以及注册用户信息的情况下,将所述标识信息以及注册用户信息承载于用于访问预定静态资源的请求中;
向所述服务端发送所述请求;
其中,所述预定静态资源与所述服务端主页处于同一域,所述标识信息由服务端生成并提供给终端设备存储,且不同终端设备中存储的标识信息不相同。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611230129.7A CN106888248B (zh) | 2016-12-27 | 2016-12-27 | 用于获取用户访问行为信息的方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611230129.7A CN106888248B (zh) | 2016-12-27 | 2016-12-27 | 用于获取用户访问行为信息的方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106888248A true CN106888248A (zh) | 2017-06-23 |
CN106888248B CN106888248B (zh) | 2019-11-05 |
Family
ID=59176160
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611230129.7A Active CN106888248B (zh) | 2016-12-27 | 2016-12-27 | 用于获取用户访问行为信息的方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106888248B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108632348A (zh) * | 2018-03-19 | 2018-10-09 | 阿里巴巴集团控股有限公司 | 一种业务校验方法和装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050036039A (ko) * | 2003-10-14 | 2005-04-20 | 주식회사 이파워게이트 | 3차원 렌더링 처리를 위한 컴퓨팅자원의 중개시스템 및방법, 이에 사용되는 중개서버 |
US20100325686A1 (en) * | 2009-06-23 | 2010-12-23 | Yahoo! Inc. | Dynamic access control lists |
CN103001796A (zh) * | 2012-11-13 | 2013-03-27 | 北界创想(北京)软件有限公司 | 服务端处理网络日志数据的方法及装置 |
CN103399861A (zh) * | 2013-07-04 | 2013-11-20 | 百度在线网络技术(北京)有限公司 | 一种网址导航中的网址推荐方法、装置和系统 |
CN103605738A (zh) * | 2013-11-19 | 2014-02-26 | 北京国双科技有限公司 | 网页访问数据统计方法及装置 |
CN104063431A (zh) * | 2014-06-10 | 2014-09-24 | 百度在线网络技术(北京)有限公司 | 处理静态资源的方法及设备 |
CN104735062A (zh) * | 2015-03-12 | 2015-06-24 | 微梦创科网络科技(中国)有限公司 | 一种网络用户注册方法及服务器 |
-
2016
- 2016-12-27 CN CN201611230129.7A patent/CN106888248B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050036039A (ko) * | 2003-10-14 | 2005-04-20 | 주식회사 이파워게이트 | 3차원 렌더링 처리를 위한 컴퓨팅자원의 중개시스템 및방법, 이에 사용되는 중개서버 |
US20100325686A1 (en) * | 2009-06-23 | 2010-12-23 | Yahoo! Inc. | Dynamic access control lists |
CN103001796A (zh) * | 2012-11-13 | 2013-03-27 | 北界创想(北京)软件有限公司 | 服务端处理网络日志数据的方法及装置 |
CN103399861A (zh) * | 2013-07-04 | 2013-11-20 | 百度在线网络技术(北京)有限公司 | 一种网址导航中的网址推荐方法、装置和系统 |
CN103605738A (zh) * | 2013-11-19 | 2014-02-26 | 北京国双科技有限公司 | 网页访问数据统计方法及装置 |
CN104063431A (zh) * | 2014-06-10 | 2014-09-24 | 百度在线网络技术(北京)有限公司 | 处理静态资源的方法及设备 |
CN104735062A (zh) * | 2015-03-12 | 2015-06-24 | 微梦创科网络科技(中国)有限公司 | 一种网络用户注册方法及服务器 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108632348A (zh) * | 2018-03-19 | 2018-10-09 | 阿里巴巴集团控股有限公司 | 一种业务校验方法和装置 |
WO2019179244A1 (zh) * | 2018-03-19 | 2019-09-26 | 阿里巴巴集团控股有限公司 | 一种业务校验方法和装置 |
TWI694402B (zh) * | 2018-03-19 | 2020-05-21 | 香港商阿里巴巴集團服務有限公司 | 業務校驗方法和設備 |
US11816714B2 (en) | 2018-03-19 | 2023-11-14 | Advanced New Technologies Co., Ltd. | Service verification method and apparatus |
Also Published As
Publication number | Publication date |
---|---|
CN106888248B (zh) | 2019-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11250469B2 (en) | Systems and methods for accessing first party cookies | |
US9691035B1 (en) | Real-time updates to item recommendation models based on matrix factorization | |
US6807542B2 (en) | Method and apparatus for selective and quantitative rights management | |
US20070162581A1 (en) | Using identity/resource profile and directory enablers to support identity management | |
CN106169963A (zh) | 服务页面的访问方法及系统、代理服务器 | |
CN111034149A (zh) | 基于区块链的单一id服务的系统及方法 | |
CN106059847A (zh) | 一种用户刷单行为检测方法和装置 | |
US20240095767A1 (en) | System and method for domain name valuation | |
WO2021112822A1 (en) | Intent addition for a chatbot | |
US11711203B2 (en) | Systems and methods for gated offer eligibility verification | |
CN106888248B (zh) | 用于获取用户访问行为信息的方法及设备 | |
US10685027B2 (en) | Search system | |
US10110607B2 (en) | Database access using a common web interface | |
US9961087B2 (en) | Third party paywall authentication system | |
US10417296B1 (en) | Intelligent bookmarking with URL modification | |
RU2745362C1 (ru) | Система и способ формирования индивидуального содержимого для пользователя сервиса | |
US20210303726A1 (en) | Privacy preserving synthetic string generation using recurrent neural networks | |
CN109635194A (zh) | 用于生成信息的方法和装置 | |
EP3759603A1 (en) | In-line event handlers across domains | |
US11689633B2 (en) | Systems and methods for tracking user access across web domains | |
US20230195931A1 (en) | Multi-Device, Multi-Model Categorization System | |
KR100606239B1 (ko) | 사용자 로그인 아이디 관리 시스템 및 그 방법 | |
US11334905B2 (en) | Systems and methods for gated offer eligibility verification | |
CN109086428B (zh) | 转发信息访问次数统计方法及装置 | |
US20210110450A1 (en) | Systems and methods for gated offer eligibility verification |
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 |