基于重新加载事件对网络资源进行的交互性分析

申请号 CN201380073334.5 申请日 2013-12-18 公开(公告)号 CN105144137A 公开(公告)日 2015-12-09
申请人 亚马逊科技公司; 发明人 G.卡蒂尔彻里安; A.T.鲁特;
摘要 从 服务器 请求 网络资源的客户端侧应用的用户启动重新加载事件,含蓄地表示出所述用户对所述客户端侧应用加载所述网络资源的至少某一方面不满意。有关重新加载事件时所述应用的操作条件的信息可以指导识别有关所述网络资源、所述客户端侧应用或所述服务器的任何问题或缺点存在。用于显示网页的代码可包括一个或多个检测脚本,所述检测脚本指示所述客户端侧应用和/或所述服务器侧应用检测重新加载事件、在所述重新加载事件启动时捕获信息以及将捕获的信息传输回到所述服务器,其中所述信息可与 阈值 或公差相比较,以确定是否存在任何此类问题或缺点。
权利要求

1.一种用于使用至少一个计算机处理器来确定网络资源的交互平的计算机实施的方法,其包括:
通过网络将用于生成网络资源的多个代码从至少一个服务器传输到客户端侧应用,其中所述多个代码包括检测脚本,所述检测脚本用于在针对所述网络资源的重新加载事件之后捕获有关所述网络资源、所述客户端侧应用或者所述至少一个服务器中的至少一个的操作信息;
通过所述网络在所述至少一个服务器处检测所述客户端侧应用处针对所述网络资源的所述重新加载事件;
通过所述网络在所述至少一个服务器处识别根据所述检测脚本从所述客户端侧应用捕获的所述操作信息;以及
使用所述至少一个计算机处理器来分析所述操作信息,以确定所述网络资源的所述交互水平。
2.根据权利要求1所述的计算机实施的方法,其还包括:通过所述网络在所述至少一个服务器处检测来自所述客户端侧应用的针对所述网络资源的加载事件。
3.根据权利要求1所述的计算机实施的方法,其中识别所述操作信息包括通过所述网络从所述客户端侧应用接收所述操作信息。
4.根据权利要求1所述的计算机实施的方法,其中识别所述操作信息包括在所述至少一个服务器处使用所述至少一个计算机处理器捕获所述操作信息。
5.根据权利要求1所述的计算机实施的方法,其中所述重新加载事件包括以下至少一个:
在所述客户端侧应用处选择刷新按钮;
在所述客户端侧应用处选择重新加载按钮;
在所述客户端侧应用处选择超链接图标;
在所述客户端侧应用处选择超链接的多个文本;
在所述客户端侧应用处选择书签;或者
关闭所述客户端侧应用、重新打开所述客户端侧应用以及从所述客户端侧应用请求用于生成所述网络资源的所述多个代码。
6.根据权利要求1所述的计算机实施的方法,其中所述操作信息包括以下至少一个:
所述网络资源的统一资源定位符;
针对所述网络资源的所述加载事件的启动与针对所述网络资源的所述重新加载事件的启动之间的经过时间;
响应于异常情况,由所述客户端侧应用生成的至少一个异常对象;
启动所述重新加载事件的所述客户端侧应用的类型;
所述客户端侧应用加载的虚拟里程碑的数量;
在所述重新加载事件启动时,维护在运行所述客户端侧应用的计算机上的多个操作软件的版本;以及
在所述重新加载事件启动时所述计算机的位置
7.根据权利要求1所述的计算机实施的方法,其还包括:
使用所述至少一个计算机处理器生成用于生成所述网络资源的所述多个代码;以及在所述至少一个服务器处,使用所述至少一个计算机处理器将所述检测脚本插入到用于生成所述网络资源的所述多个代码中,其中所述检测脚本用JavaScript®进行编程。
8.根据权利要求1所述的计算机实施的方法,其中用于生成所述网络资源的所述多个代码包括用于在所述网络资源内生成至少一个虚拟里程碑的指令;以及其中所述检测脚本包括指令,所述指令用于:
生成客户端数据对象;
将有关至少一个异常情况的信息添加到所述客户端数据对象;
将有关传输所述多个代码与检测到所述重新加载事件之间的经过时间的信息添加到所述客户端数据对象;
添加有关通过所述客户端侧应用生成所述至少一个虚拟里程碑的信息;
将有关所述客户端侧应用的信息添加到所述客户端数据对象;以及
将所述客户端数据对象传输到所述至少一个服务器,以检测所述重新加载事件。
9.根据权利要求8所述的计算机实施的方法,其还包括:
在所述至少一个服务器处识别多个业务规则;
在所述至少一个服务器处分析所述客户端数据对象,以识别是否违反了所述多个业务规则中的任一。
10.根据权利要求9所述的计算机实施的方法,其中所述多个业务规则包括以下至少一个:重新加载事件的阈值数量、异常情况的阈值数量或虚拟里程碑的阈值数量。
11.根据权利要求1所述的计算机实施的方法,其还包括以下步骤:响应于所述重新加载事件,通过所述网络将用于生成所述网络资源的所述多个代码从所述至少一个服务器传输到所述客户端侧应用。
12.根据权利要求1所述的计算机实施的方法,其中所述检测脚本还适于致使所述客户端侧应用将所述操作信息存储在数据库中。
13.根据权利要求1所述的计算机实施的方法,其还包括:
在所述至少一个服务器处,接收有关所述重新加载事件后的与所述网络资源的用户交互的信息,其中分析所述操作信息以确定所述网络资源的所述交互水平的所述步骤包括识别与所述重新加载事件后的与所述网络资源的所述用户交互相关联的所述多个代码的一部分。
14.根据权利要求1所述的计算机实施的方法,其还包括:
识别所述网络资源、所述客户端侧应用或所述至少一个服务器中的至少一个的预期操作状态,其中分析所述操作信息以确定所述网络资源的所述交互水平的所述步骤包括将所述操作信息与所述预期操作状态相比较;
如果所述操作信息与所述预期操作状态一致,则确定所述网络资源的所述交互水平足够;以及
如果所述操作信息与所述预期操作状态不一致,则传输至少一个警告。
15.根据权利要求1所述的计算机实施的方法,其中所述操作信息包括有关所述重新加载事件启动时由所述客户端侧应用加载的所述网络资源的一部分的信息,以及其中分析所述操作信息以确定所述网络资源的所述交互水平包括识别所述多个代码的一部分,所述部分对应于所述重新加载事件启动时由所述客户端侧应用加载的所述网络资源的所述部分。

说明书全文

基于重新加载事件对网络资源进行的交互性分析

背景技术

[0001] 计算机用户可使用网络浏览器和其他类似的客户端侧应用来访问万维网的广泛资源,操作方式通常是:根据某一协议(例如,超文本传输协议(或"HTTP"))从一个或多个服务器和/或服务器侧应用接收用计算机语言(例如,超文本标记语言(或"HTML"))编写的代码;将该代码解析成文档对象模型(或"DOM");以及将DOM汇编成可在用户界面上显示给用户的网页。此类浏览器或其他应用通常包括:用于将从服务器接收的信息转译成可显示在用户界面上的内容的引擎;用于解析和执行脚本的解译程序;以及用于存储采用"cookie"形式的信息或文件的数据库或其他数据存储,所述文件有关用户的浏览活动,并且在将来可由同一网站或其他网站检索。
[0002] 网页在网络浏览器上的显示开始于加载事件的启动,加载事件导致网络浏览器针对与统一资源定位符(或"URL")或者加载事件所针对的其他文件位置相关联的一个或多个文件而传输请求。此类加载事件可包括:将URL输入到地址框或地址栏中;选择可以超链接到URL的图片或文本集;选择书签、主按钮或可链接到URL或以其他方式与URL相关联的任何其他特征;或者关闭网络浏览器,以及随后在网络浏览器重新打开时返回到网页。当网络浏览器的用户将加载事件提供给浏览器时,网络浏览器可针对与URL相关联的互联网协议(或"IP")地址执行各种数据存储的搜索,有时称为域名系统(或"DNS")"查找"。例如,当尝试定位可能与URL相关联的IP地址时,浏览器可搜索自身的缓存记录,或者存储在操作系统上的缓存中或路由器中的记录,通过所述路由器可访问互联网以及外部资源。
[0003] 一旦识别与URL相关联的IP地址,浏览器便根据HTTP将对URL处网页的请求发送到服务器,所述服务器中放有与网页相关联的文件,并且服务器通过以代码的形式将响应提供到浏览器来处理请求,所述代码用一种或多种计算机语言表示,例如,HTML。浏览器随后可开始将代码译成网页,并且可在必要时传输文件请求,所述文件可嵌在服务器提供的代码内。例如,在代码包括HTML并且涉及图片、多媒体或可在其他位置(例如,外部服务器)找到的其他文件的情况下,浏览器可传输针对每个文件的请求。当代码和其他文件被浏览器从服务器接收时,浏览器可以开始汇编网页,以便显示在用户界面上。
[0004] 有时候,在加载网页的过程中,或在网页已完成加载之后,网络浏览器的用户可以选择启动重新加载事件,从而导致重传与同一URL相关联的一个或多个文件的请求,该URL是在促使网页初始加载的加载事件中提供的。最常见的是,重新加载事件包括选择"重新加载"或"刷新"按钮,以针对最近提交给服务器的网页来重新提交URL,并且致使网络浏览器开始再次加载网页。其他重新加载事件可包括,但不限于,将加载事件提供的同一URL重新输入到地址栏或地址框中、重新选择超链接到加载事件提供的同一URL的图片或文本集(即,选择网页或电子邮件文件中的超链接,选择当前显示的网页的书签),或者在保护网络浏览器操作的关闭或其他动作之后,进行将网络浏览器返回到网页的任何步骤。
[0005] 基于客户端应用(例如,网络浏览器)的用户可因多种原因而启动重新加载事件。第一,用户对显示器上的网页或者网页上展示的一个或多个元素的加载速度可能不满意。
第二,意图在网页上显示的一个或多个元素或者整个网页本身可能最终没能加载。第三,且可能最重要的是,用户可能受到阻碍或阻止而无法执行促使用户首先访问网页的一个或多个任务。就这点而言,可以检测到用户启动重新加载事件,该重新加载事件导致提交针对网页的二次或后续请求,并且将此解译为表达对网页的至少一方面不满意,或者表示用户在执行一个或多个任务时遇到困难,例如,最终可在重新加载事件之后执行的那些任务。因此,可跟踪重新加载事件的启动或用户启动重新加载事件的频率(例如,每单位时间启动的重新加载事件的数量),并进行分析,以确定网页的交互性和/或就网页、客户端侧应用或存有网页及相关内容的服务器而言,是否需要任何补救措施。
附图说明
[0006] 图1为根据本公开的实施方案,用于基于重新加载事件来分析网络资源的交互性的系统的框图
[0007] 图2为根据本公开的实施方案,用于呈现网页和基于重新加载事件来分析网络资源的交互性的网络浏览器的一项实施方案。
[0008] 图3为根据本公开的实施方案,用于基于重新加载事件来分析网络资源的交互性的过程的流程图
[0009] 图4为根据本公开的实施方案,在客户端侧应用处捕获的数据表格,所述数据用于传输到基于重新加载事件来分析网络资源的交互性的系统或方法。
[0010] 图5为根据本公开的实施方案,在客户端侧应用处捕获并由基于重新加载事件来分析网络资源的交互性的系统和方法分析的数据表格。
[0011] 图6为根据本公开的实施方案,用于基于重新加载事件来分析网络资源的交互性的过程的流程图。
[0012] 图7A为根据本公开的实施方案,用于显示网页的代码集,所述网页将由基于重新加载事件来分析网络资源的交互性的系统和方法进行分析。
[0013] 图7B为根据本公开的实施方案,基于图7A的代码集生成的网页,所述网页由基于重新加载事件来分析网络资源的交互性的一项实施方案进行分析。
[0014] 图8为根据本公开的实施方案,用于分析网络资源的交互性的过程的流程图。
[0015] 图9为根据本公开的实施方案,用于基于重新加载事件来分析网络资源的交互性的过程的流程图。

具体实施方式

[0016] 如下文更详细地描述,本公开涉及用于基于重新加载事件来分析或监测一个或多个网络资源的交互性的系统和方法,所述重新加载事件可从请求一个或多个网络资源的用户操作的浏览器接收或检测到。具体而言,本公开的一项实施方案描述基于接收或检测到针对网络资源的重新加载事件来分析已从服务器或其他外部来源请求的网络资源的交互性和操作性的系统和方法,这可伴随关于网络资源、浏览器和/或运行该浏览器的计算机硬件捕获的预定义数据集。此类重新加载事件可包括:选择显示网络资源的浏览器上的"刷新"或"重新加载"按钮;将对应于网络资源的统一资源定位符(或"URL")重新输入到浏览器上的地址框或地址栏中;选择超链接到对应于网络资源的同一URL的图片、按钮或文本集;或者将针对网络资源的二次或后续请求从浏览器提交到服务器的任何其他动作。在捕获数据的任何方面超出预定阈值或以其他方式表明已发生错误的情况下,网络资源、浏览器和/或计算机硬件的交互性可被确定为不够充分,并且可手动或自动采取一个或多个补救措施来解决这一不足。
[0017] 所属领域的技术人员意识到,网络资源(包括但不限于网页)由通常用超文本标记语言(或"HTML")编写的代码集构成,所述代码集在从用户和/或浏览器以加载事件的形式接收到请求时,会从服务器传输到浏览器。代码集可包括用于显示文本、图片或媒体的特征,以及到其他外部内容的链接,或者采用脚本指令形式的其他功能,用于在运行时间环境中执行动态的功能任务,例如,由浏览器提供并用一种或多种脚本语言(例如,JavaScript®)编程的那些。当浏览器接收到加载事件时,例如,响应于将URL输入到浏览器上的地址框或地址栏中、选择浏览器提供的按钮或书签,或者选择超链接图片或文本集,浏览器会调用服务器。一旦服务器接收到调用,代码以及任何相关联的文件都被传输到浏览器,其中一个或多个引擎会呈现所述代码和相关联的文件,并且将其解析成以文档对象模型(或"DOM")的形式的可识别内容,而且将符合DOM的所呈现和解析的内容提供到用户界面。网络资源可包括一个或多个网页中显示的文本、图片和/或媒体,以及额外文件,例如,音频(例如,.MP3或.WMA文件)、视频(例如,.WMV或.AVI文件),或者可通过网络传输并且通过网络浏览器或一个或多个类似应用提供给用户的其他基于文本或多媒体内容。
[0018] 可在用于生成网络资源的代码内提供的一些类型的脚本指令可包括检测脚本,所述检测脚本检测并存储有关客户端侧应用(例如,网络浏览器)或者运行客户端侧应用而且网络资源提供到的计算机硬件的操作或状态的信息。例如,JavaScript®中的"导航器(navigator)"对象可检测客户端侧应用的名称和/或版本,以及应用或操作系统的语言或者应用运行的平台。此外,类似的指令可检测用户请求网络资源的时间或日期,或者用户请求网络资源的位置。此类信息可以存储在客户端侧的任何数据存储上(例如,HTML5存储文件或“cookie”),并且在客户端侧应用与服务器侧应用之间的连接性得到确认时,被传输到服务器侧。例如,当网络资源因网络故障未能加载时,网络浏览器的用户启动重新加载事件的情况下,网络浏览器可根据检测脚本捕获信息,即使浏览器直到网络故障得到解决才能与服务器通信,也是如此。在此类情况下,一旦网络浏览器与服务器和/或服务器侧应用之间的连接性被恢复,信息便可传输到服务器和/或服务器侧应用。
[0019] 本公开的系统和方法可利用检测脚本或其他特征来检测或记录关于设有网络资源的客户端侧应用或计算机机器的操作数据,并且可分析此类数据,以确定网络资源的交互平,或者提供网络资源时是否存在任何问题或不利条件。响应于接收或检测到来自客户端侧应用的用户的重新加载事件(即,对特定网络资源的二次或后续调用),本公开的系统和方法可从客户端侧应用请求此类操作数据,并且在接收到来自应用的数据后,分析数据,以确定重新加载事件是否表示应用出现一个或多个操作问题。例如,如果请求的网页未能加载或在一定时间段后未能加载,或者如果意图显示在网页中的特定方面(例如,图片或视频文件)未能通过页面加载,那么用户可选择网络浏览器上的"刷新"或"重新加载"按钮。因此,选择"刷新"或"重新加载"按钮可表示页面没有在加载或加载缓慢,或者网页的某些元素未能加载。此外,从网络浏览器的用户接收到请求网络资源的初始加载事件(即,将URL输入到地址框中,或选择超链接图片或文本集)与从该网络浏览器的用户接收或检测到二次或后续请求网络资源的重新加载事件(即,选择"刷新"或"重新加载"按钮)之间的经过时间也可为网络资源的交互水平提供一个或多个标记。最终,在用户从特定位置提供重新加载事件的情况下,用户的位置可被分析,以确定任何问题或不利事件是否可能与该 特定位置有关(即,影响区域中的一个或多个用户的网络中断或延迟)。
[0020] 根据本公开的一项实施方案,平板计算机上运行的网络浏览器的用户通过将URL(包括域名和文件路径)输入到网络浏览器的地址框中来请求网页。响应于此加载事件,与URL相关联的IP地址便从浏览器传输到服务器,并且HTML代码集和任何相关联文件随后从服务器传输到浏览器。代码集可包括代码子集(例如,检测脚本),一旦重新加载事件启动,所述代码子集便记录有关浏览器和平板计算机的当前运行状态的数据,包括计算机上的浏览器和操作系统的名称和版本;重新加载事件的时间和日期;计算机的IP地址;计算机的位置;启动加载事件与启动重新加载事件之间的经过时间;重新加载事件时的页面状态(即,HTML及其中嵌入的任何文件的加载状态)。当网页加载在网络浏览器上时,用户选择浏览器上的"刷新"按钮,从而启动重新加载事件,并且有关浏览器和平板计算机的运行状态的数据被记录和传输到服务器。
[0021] 一旦数据被捕获并传输到服务器,服务器便分析该数据,以识别用户可能选择启动重新加载事件的任何原因。例如,数据可独自或者与有关从其他计算机接收或检测到的其他重新加载事件的数据结合起来反映出:网页在足够长的时间段内没有加载,即,如果网页加载的速率低于预定阈值,或者网页的特定元素根本没有加载。此外,特定浏览器上的网页加载或者平板计算机上运行的浏览器版本可能有问题。最终,可能会有独立的未知和/或局部故障阻止网页加载在特定网络浏览器和/或运行网络浏览器的计算机上。在此类情况下,基于重新加载事件可识别网页的一个或多个问题,从而可警告服务器的操作员:对于一般的文本或嵌入文件而言,或者对于网页在用户操作的特定浏览器或计算机上的加载而言,可能会存在此类问题。
[0022] 根据本公开的另一项实施方案,用于访问社交网络的应用安装在移动电话中。根据用户的请求,该应用准许移动电话的用户查看社交网络的成员发表的各种页面和帖子。应用包括代码集,所述代码集经编程以在用户提供重新加载事件之后,通过蜂窝连接或者无线保真(或"WiFi")连接收集操作数据并将其报告给社交网络,所述数据有关移动电话、应用以及移动电话与社交网络之间的连接的状态,所述重新加载事件可包括对先前查看的页面或帖子的二次或后续请求,以及所述代码集经编程以在恢复足够水平的连接性之后,将操作数据传输到社交网络。
[0023] 将被收集的操作数据可包括:提交重新加载事件的社交网络成员的身份;在重新加载事件启动时,移动电话与社交网络之间的传输率,以兆位每秒(或"Mbps")表示;移动电话的特定品牌以及其上安装的操作系统的版本;在重新加载事件被请求时,移动电话的位置(这可使用机载硬件检测,例如,全球定位系统(或"GPS")接收器,或者通过使用一个或多个蜂窝塔的三测量或位置识别来检测);用户想要查看的页面或帖子;以及有关移动电话与社交网络之间的连接的任何可用数据,例如,与移动电话通信的蜂窝电话或蜂窝塔。一旦重新加载事件启动,信息便存储在移动电话上的缓存或其他数据存储中,并且在移动电话与社交网络之间的连接得到确认后就传输到社交网络,当移动电话在授权WiFi连接集束器或蜂窝塔的范围内,或者当移动电话与一个或多个通用计算机同步(例如,通过通用串行总线(或"USB")连接到台式或膝上型计算机),可能会发生这种情况。
[0024] 通过将此类特征并入移动应用中,社交网络能够监测其与安装有应用的特定类型的移动装置的交互性,并且识别和评估用户在访问社交网络时可能遇到的任何故障。例如,在社交网络的特定成员响应于页面或帖子而频繁提交重新加载事件的情况下,响应于该特定成员启动的重新加载事件而从应用接收数据可以不被强调或定为不太可能表示社交网络或其与应用的连接发生故障。在社交网络的多个成员响应于单个页面或帖子而提交重新加载事件的情况下,该单个页面或帖子可被定为更可能表示社交网络出现故障,或就显示的文本和/或多媒体而言,连接出现故障。在社交网络的成员是在其移动电话通过蜂窝电话连接来连接到互联网,而不是在其移动电话通过WiFi连接来连接到互联网时提交重新加载事件的情况下,社交网络可检修应用软件和/或其自身的服务器,以确定应用在通过WiFi连接来连接到社交网络时是否有任何困难。最后,在社交网络的成员针对多个页面或帖子提交重新加载事件的比率超过标准的预定阈值概率或频率的情况下,可以理解为,有一个或多个普遍问题可能正在困扰整个社交网络。
[0025] 根据本公开的又一实施方案,服务器侧应用经编程以增加现有网页的检测脚本,从而监测与相应客户端侧应用的交互性。当用户从客户端侧应用启动请求服务器上托管的特定网页的加载事件时,服务器侧应用先将特定检测脚本插入到用于显示网页的代码中,然后再将代码传输到客户端侧应用。检测脚本含有:代码,其用于将一个或多个虚拟里程碑插入到网页的DOM中;以及一个或多个脚本事件,其用于记录有关在重新加载事件启动后请求网页的浏览器和/或计算机的运行状态的数据,并且用于在客户端侧应用与服务器侧应用之间的连接得到确认时,将数据传输到服务器。所述数据可包括:重新加载事件启动的日期和时间;启动的重新加载事件的特定类型(例如,"刷新"或"重新加载"按钮的选择,将URL输入到地址框中的二次或后续输入,或者书签或超链接的二次或后续选择);或者重新加载事件启动时,客户端侧应用已经加载的网页量和程度,这可至少部分由客户端侧应用已经成功加载的虚拟里程碑的数量来测量或评估。虚拟里程碑可包括文本、图片、框架、元素或网页其他方面的部分,这些均可表达或嵌入在生成网页的代码中。
[0026] 一旦重新加载事件启动,数据便由客户端侧应用捕获并传输到服务器侧应用,其中数据可与服务器处和/或由服务器侧应用捕获的其他数据相聚合,并被分析以确定可能会促使用户启动重新加载事件的任何可能问题。具体而言,最终传送到网络浏览器和/或成功显示在网页上的虚拟里程碑的数量和位置可在DOM中指示出一个或多个可能问题的位置,这些问题阻止了网页适当加载,并且可能会促使用户启动重新加载事件。
[0027] 因此,本公开的系统和方法可用来监测网络资源的交互性,方式是分析与重新加载事件的启动相关联的数据,所述重新加载事件来自请求或加载网络资源的应用或机器,或者托管网络资源的应用或机器。例如,此类数据可包括关于以下项的任何操作信息:网络资源;请求网络资源的客户端侧应用或任何客户端侧硬件;生成网络资源的服务器侧应用或服务器侧硬件;或者用户在接收或检测到重新加载事件之前或之后做出的任何其他动作。在意外启动重新加载事件的情况下,或者在重新加载事件的启动频率超出预定阈值的情况下,可以理解为,网络资源的交互性存在一个或多个问题,至少是关于网络资源、客户端侧应用、服务器侧应用,或者与之相关联的任何硬件或软件。
[0028] 参考图1,示出了基于重新加载事件来分析网络资源的交互性的一个系统100。参考图1,系统100包括用户110、120、130(或者成员、客户、消费者、顾客或买家),以及企业140(或者主办方、市场或其他组织),所述用户和企业通过网络150(例如,互联网)连接到彼此。
[0029] 用户110、120、130可以是希望使用客户端应用通过互联网150来访问与实体或个体(例如,企业140)相关联的一个或多个资源的任何实体或个体,所述客户端应用诸如膝上型计算机112上运行的网络浏览器114、平板计算机122上运行的网络浏览器124或者智能电话132上运行的网络浏览器134。通过使用膝上型计算机112、平板计算机122和/或智能电话132借助网络150发送和接收数字数据,用户110、120、130可连接到企业140或以其他方式与之通信,所述用户可通过有线或无线方式连接到互联网150,如线115、125、135所示。网络浏览器114、124、134为用户110、120、130提供一个或多个用户界面,以便查看企业网站144和/或与之通信。
[0030] 此外,相关领域的技术人员将认识到,用户110、120、130可使用键盘、小键盘、鼠标、触笔、触摸屏或者其他装置(未示出)或方法,以便与下列项交互:膝上型计算机112和/或网络浏览器114;平板计算机122和/或网络浏览器124;智能电话132和/或网络浏览器134;或者企业140、服务器142、网站144、数据库146和/或处理器148;或者以便"选择"项目、链接、节点、集线器或本公开的任何其他方面。
[0031] 企业140可以是维护网络计算机基础设施的任何实体或个体,出于任何原因包括托管网站144的服务器142、数据库146和/或一个或多个计算机处理器148,所述原因包括但不限于出售或以其他方式让客户(例如,用户110、120、130)从在线市场或其他处理系统下载、购买、租借、租用或借用各项目。网站144可使用一个或多个物理计算机服务器142来实施,所述计算机服务器通过发送和接收数字数据而与网络150相连接或以其他方式通信,如线145所示。此外,在企业140是在线市场的情况下,在市场140可购得或用户110、120、130可订购的项目可由一个或多个第三方供应商(或者商家或制造商)制造或从中获得,而企业140本身可以是商家或供应商。
[0032] 本文所述的计算机、服务器、装置等具有必需的电子设备、软件、存储器、存储设备、数据库、固件、逻辑/状态机、微处理器、通信链路、显示器或者其他可视或音频用户界面、打印装置以及任何其他输入/输出接口,以便执行本文所述的功能和/或实现本文所述的结果。此外,相关领域的技术人员将认识到,此类计算机、服务器、装置等的用户可操作键盘、小键盘、鼠标、触笔、触摸屏或者其他装置(未示出)或方法,以便与计算机、服务器、装置等交互,或者以便"选择"项目、链接、节点、集线器或本公开的任何其他方面。
[0033] 本文所述的由"用户"或"企业"执行的过程步骤可以是由相应计算机系统执行或者在一个或多个通用计算机执行的软件模(或计算机程序)内实施的自动化步骤。此外,本文所述的由"用户"或"企业"执行的过程步骤通常可由人工操作员通过膝上型计算机112、平板计算机122、智能电话132或服务器142来执行,或者可由自动化代理执行。
[0034] 用户110、120、130和企业140可使用任何支持网络功能的或互联网应用或特征,例如,网络浏览器114、124、134或网站144,或者任何其他客户端-服务器应用或特征,包括电子邮件(或E-mail)或其他消息传递技术,以便连接到互联网150或者与彼此通信,例如,短消息服务或多媒体消息服务(SMS或MMS)文本消息。此外,膝上型计算机112、平板计算机122、智能电话132以及服务器142可包括能够通过网络进行通信的多种计算装置中的任一个,包括但不限于,机顶盒、个人数字助理、包括"智能电话"的移动电话、数字媒体播放器、连网板、平板计算机、膝上型计算机、台式计算机、电子书阅读器等等。计算机通信领域的技术人员熟知用于提供膝上型计算机112、平板计算机122、智能电话132与服务器142之间的通信的协议和部件,且因此,本文中无需更详细地描述。
[0035] 本文中所述的数据和/或计算机可执行指令、程序、固件、软件等(本文中也称为"计算机可执行"部件)可存储在计算机可读介质上,所述介质位于膝上型计算机112、平板计算机122、智能电话132和/或服务器142内或者可由其访问,并且具有指令序列,所述指令在由处理器(例如,中央处理单元或CPU)执行时,致使处理器执行本文所述的所有或一部分功能和/或方法。此类计算机可读指令、程序、软件等可使用与计算机可读介质相关联的驱动机构或者借助外部连接而加载到膝上型计算机112、平板计算机122、智能电话132或服务器142的存储器中,例如,所述介质为软盘驱动器、CD-ROM驱动器、DVD-ROM驱动器、网络接口等。
[0036] 本公开的系统和方法的一些实施方案也可提供为计算机可执行程序产品,包括存储有指令(采用压缩或未压缩形式)的非临时机器可读存储介质,所述指令可用来对计算机(或其他电子装置)进行编程,以便执行本文中所述的过程或方法。机器可读存储介质可包括,但不限于,硬盘驱动器、软磁盘、光盘、CD-ROM、DVD、只读存储器(ROM)、随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、闪存、磁卡或光卡、固态存储装置或者可适用于存储电子指令的其他类型的介质/机器可读介质。此外,实施方案也可提供为计算机可执行程序产品,包括临时机器可读信号(采用压缩或未压缩形式)。不论是否使用载波调制,机器可读信号的实例均可包括,但不限于,托管或运行计算机程序的计算机系统或机器可被配置成访问的信号,或者包括可通过互联网或其他网络下载的信号。
[0037] 相对于因各种原因而从服务器侧应用请求的网络资源,网络浏览器或其他类似客户端侧应用的用户可启动重新加载事件。例如,如果网页加载时间太长,或者如果网页的一个或多个元素未能加载,则用户可请求重新加载或刷新网页。为了更新信息的显示,或者如果网页含有非预期或不准确的信息,用户也可请求重新加载或刷新网页。因此,根据一个或多个重新加载事件的启动可推断出的信息可有助于洞悉网络浏览器的用户心态,且从而洞悉显示的网页质量、准确性或有效性,或者网络浏览器与产生网页的一个或多个服务器之间的交互性。具体而言,在用户启动重新加载事件的情况下,用户在重新加载事件之后启动的下一步交互可能尤其具有指导性,因为在很多情况下,可以假设用户将该启动交互而非重新加载事件,即使他或她能够启动重新加载事件也是如此。
[0038] 出于说明的目的,在企业维护且供各种计算机用户通过互联网访问的网站的情况下,可以首先参考本文所公开的一些系统和方法,例如,由企业140维护且供用户110、120、130访问的网站144,如图1所示。然而,所属领域的技术人员将认识到,本文所公开的系统和方法也可用于许多其他情况,而且它们的实用性不限于本文所述的任何优选实施方案。
[0039] 参考图2,示出了可与本公开的系统和方法结合使用的网络浏览器200的一项实施方案。网站包括菜单栏210、选项栏220、地址栏230、滑块栏240以及网页250,所述网页包括多个内容260。
[0040] 菜单栏210包括多个可选选项212,以及用于最小化浏览器200的按钮214,和用于关闭浏览器200的按钮216。选项栏220包括后退按钮222和前进按钮224,分别用于返回或前进到两个最近查看的网页。选项栏220还包括:刷新按钮226,其用于重新加载当前显示的网页250的内容;以及主页按钮228,其用于访问网络浏览器200打开之后通常会显示的具体页面。
[0041] 地址栏230包括空间,用于可输入具体网络资源的基于文本地址或URL 232。滑块栏240包括用于导航网页250的内容的各种特征,包括箭头242、244和滑块246,它们用于垂直平移浏览器200中示出的网页250的部分。多个内容260包括图片262、超链接文本集264以及显示的文本集266。
[0042] 所属领域的技术人员会理解,根据本公开,网络浏览器(例如,图2所示的网络浏览器200)的用户可采用多种方式启动加载事件。第一,用户可将URL或其他文件位置(例如,地址或URL 232)输入到地址栏230中,从而致使将调用从网络浏览器200传输到网页所定位的一个或多个服务器。第二,用户可选择主页按钮228,从而致使传输针对预定网页的调用,所述预定网页已经被定义为网络浏览器200的"主"页。第三,用户可从菜单栏210中显示的下拉菜单选项中选择一个或多个书签,这也将致使传输针对可与选择的书签相关联的网页的调用。第四,用户可选择网页250中显示的一个或多个超链接特征,例如,文本集264,或者链接到或以其他方式与网络资源相关联的任何其他特征。根据本公开,加载事件可包括这些动作中的任一个,以及致使将网络资源的调用从客户端侧应用传输到一个或多个服务器的任何其他动作。
[0043] 类似地,所属领域的技术人员也理解,根据本公开,网络浏览器(例如,图2所示的网络浏览器)的用户可采用多种方式启动重新加载事件。第一,且最常用的是,用户可选择选项栏220中示出的"刷新"按钮226。第二,用户可将同一URL或文件位置(例如,致使显示网页250的地址或URL 232)重新输入到地址栏230中。第三,用户可从菜单栏210中显示的下拉菜单中选择书签,或者网页250中显示的超链接特征中的一个,前提是选择的书签或选择的超链接特征与致使显示网页250的地址或URL 232相关联。第四,用户可执行关闭网络浏览器200的任何步骤,例如,通过选择按钮216,并且随后一旦网络浏览器200重新打开,就返回到网页。根据本公开,重新加载事件可包括这些动作中的任一个,以及任何其他动作,这些动作致使将网络资源的调用从客户端侧应用重新传输到一个或多个服务器,二次或后续将调用传输到一个或多个服务器。
[0044] 如上所述,在客户端侧应用启动重新加载事件期间可捕获的操作数据,可包括客户端侧应用或一个或多个服务器侧应用捕获到的数据,可被一个或多个服务器侧应用分析,以确定重新加载事件针对的一个或多个网络资源是否存在任何操作问题。参考图3,示出了流程图300,该流程图呈现出基于重新加载事件执行交互性分析的过程的一项实施方案。在步骤310处,服务器侧应用生成包括检测脚本的网页。例如,服务器侧应用可创建自动包括此类检测脚本的网页,或者可将检测脚本插入先前生成的网页中,其中检测脚本意图捕获有关网页以及客户端侧应用和/或运行应用的计算机的操作状态和交互性的数据。在步骤315处,客户端侧应用可传输对网页的调用。例如,用户可将对应于网页的URL或网址输入到一个或多个计算机上运行的网络浏览器上的地址框中,或者选择对应于网页的超链接图片、超链接文本集或书签。
[0045] 在步骤320处,服务器侧应用将用于显示网页的代码传输到客户端侧应用。例如,服务器可将采用HTML、Java或JavaScript或者任何其他可识别计算机语言的形式的文本传输到浏览器。在步骤325处,客户端侧应用根据检测脚本来记录操作数据,并且在步骤330处,客户端侧应用尝试将网页显示给用户。例如,在检测脚本调用计算机系统记录启动加载事件或重新加载事件的浏览器和/或计算机的类型和版本,或者记录启动加载事件或重新加载事件的时间的情况下,此类信息可以在浏览器尝试将网页呈现和显示给用户的时候被记录下来。
[0046] 在步骤340处,用户启动重新加载事件,启动方式可能是选择"刷新"或"重新加载"按钮、将构成原始网页的文本重新输入到地址栏或地址框中、选择超链接到同一网页(即,在步骤315中针对其将调用传输到服务器的网页)的图片或文本集或者尝试二次或后续请求将网页显示在网络浏览器上的任何其他方式。在步骤350处,客户端侧应用将步骤325处记录的操作数据和对网页的调用传输到服务器侧应用。在步骤390处,服务器侧应用分析从客户端侧应用接收的操作数据,以及在服务器和/或服务器侧应用捕获或观察的任何其他操作数据,以便识别任何潜在问题,并且再次将用于显示网页的代码传输到客户端侧应用。
[0047] 因此,根据本公开的系统和方法,有关从服务器侧应用请求网络资源的客户端侧应用的操作状态,或者存有网络资源的服务器侧应用或服务器的操作状态的信息,在从用户接收或检测到重新加载事件的情况下,可被捕获并传输到服务器侧应用,并且所述信息可被分析,以确定促使用户启动重新加载事件的网络资源或服务器侧应用是否存在任何问题。采用任何计算机语言编写(包括但不限于,HTML或JavaScript®)的任何类型的计算机代码(包括检测脚本或其他程序特征)可用来捕获信息并将其从客户端侧应用传输服务器侧应用,或者用来捕获有关服务器侧应用和/或任何附属服务器设备的操作性的信息。
[0048] 如上文所述,根据本公开的系统和方法,可以捕获有关网页、请求网页的客户端侧应用或运行客户端侧应用的计算机的交互性和操作性的任何类型的信息,以在重新加载事件启动时进行分析。例如,就网页而言,应用可捕获网页的URL,以及启动加载事件来请求网页的时间,以及启动重新加载事件的时间。就客户端侧应用本身而言,应用可捕获最近使用应用访问或查看的网页或资源的列表;其上安装和运行的任何防病毒保护软件的状态;"cookie"列表或其他存储的查看数据。就运行客户端侧应用的计算机而言,应用可捕获操作数据,例如,其中安装的一个或多个处理器的核心温度;其中运行的任何扇的速度;可用的处理能、存储器或电力的水平和程度(例如,交流电源的可用性或电池寿命)。一旦数据被捕获,它便可存储在客户端侧,并且此类数据以及有关网页、客户端侧应用和/或运行客户端侧应用的计算机的任何其他相关数据均可传送到服务器侧应用,并被分析,从而确定是否有任何操作问题或环境导致用户启动重新加载事件,而不是对显示的网页采用任何其他动作。
[0049] 同样,根据本公开的系统和方法,可以捕获有关托管网页的服务器侧应用或者运行服务器侧应用的服务器的交互性和操作性的任何类型的信息,以在重新加载事件启动时进行分析。例如,服务器侧应用和/或服务器可从客户端侧应用接收任何数据,以及在服务器侧捕获任何数据,并且将捕获和/或接收的数据添加到包括其他类似数据的一个或多个数据存储中。一旦被接收,数据便可在服务器侧定期被扫描或分析,并且基于其中可识别的任何问题,可以生成任何标签、电子消息和/或其他通知。此外,在服务器侧对此类数据的分析可被一个或多个业务规则驱动,包括从客户端侧应用接收或检测到的任何重新加载事件的数量和/或频率,客户端侧应用处或由其创建的异常情况(即,异常事件)的数量或频率,或者未能在客户端侧应用处加载的DOM内的元素或位置的数量或频率。
[0050] 参考图4,示出了数据表格400的一个实例,所述数据可由客户端侧应用(例如,网络浏览器)捕获,并被传送到服务器侧应用(例如,网站主机)。表格400包括:网络资源410的URL、针对网络资源410提交加载事件的日期和时间412、针对网络资源提交重新加载事件的日期和时间414以及加载事件与重新加载事件之间的经过时间416。此外,表格400还包括:从中捕获数据的客户端侧应用的名称和版本420、运行浏览器的计算机的操作系统422以及计算机的位置424和IP地址426。
[0051] 图4的表格400中示出的数据可以提供有关服务器侧应用的多种有价值的信息。例如,加载事件和重新加载事件启动的日期和时间412、414可向服务器侧应用表明,在那些日期和时间412、414,加载有关网络资源的内容时存在至少一个问题。此外,加载事件
412与重新加载事件414之间的经过时间416(即,四十二秒)相对较短,可表明加载网络内容的困难会对用户立即表现出来。接着,浏览器420和运行浏览器420的操作系统422可以表明,网络资源可能没有被此类软件或硬件的用户适当加载。此外,位置424和IP地址426可暗示用户的物理或虚拟附近出现网络问题或减速。另外,在表格400中示出的日期412和时间414启动重新加载事件仅仅是在预定时间内启动的此类重新加载事件的情况下,网络资源的交互性可被假定为足够的。相反,如果经过时间416超出一定阈值,那么可以理解为,重新加载事件涉及操作故障,而且未必是可被忽略的独立事件。
[0052] 在重新加载事件启动后被捕获并传输到服务器侧应用的、有关客户端侧应用与服务器侧应用之间的网络资源的交互性的信息,例如,图4所示表格400中的数据,可以与重新加载事件启动后从其他客户端侧应用捕获的类似信息一起共同地进行分析,以确定此类重新加载事件是否为独立情况,或者此类重新加载事件是否表示网络资源与外部用户的交互性存在更广泛的总体缺陷
[0053] 参考图5,示出数据表格500。表格500涉及就网络资源www.ready.gov接收或检测的具体重新加载事件,并且分类成列,包括:分配给重新加载事件的数字510、网络资源的URL或文件位置512、加载事件启动的日期和时间514、重新加载事件启动的日期和时间516、加载事件与重新加载事件之间的经过时间516。表格500还包括:有关启动每个重新加载事件的浏览器520、运行每个浏览器520的操作系统522以及启动重新加载事件的计算机的位置524和IP地址526的数据。如图5所示,表格500填充了有关十五个重新加载事件530-538、540-548、550-558的数据。
[0054] 汇总起来,图5的表格500中所示的数据可以被分析,以针对位置512处维护的网络资源的交互性,识别若干指示。例如,十五个重新加载事件530-538、540-548、550-558中的每一个均是由用户启动的,这些用户在2012年10月29日和30日的五小时时间段内尝试从类似位置524访问网络资源www.ready.gov 512,从而暗示在表格500显示的日期和时间514、516,需要从新泽西州(New Jersey)的位置访问网络资源www.ready.gov,并且另外访问有困难。接着,由于重新加载事件534、538、544、546、550是从同一浏览器520(即,Internet Explorer®)启动的,因此,可以推断出,用户从此类浏览器或其版本访问网络资源512比较困难。由于重新加载事件532、554、556、558是从特定浏览器520的更老版本启动的(即,Google® Chrome®的第6、7和8版,它们的最后可用时间是在2010年),因此,可以推断出,用户在浏览器520的那些特定版本上加载网络资源512比较困难。此外,由于重新加载事件532、546、550是由一个特定操作系统(即,Windows® XP)的用户启动的,由于重新加载事件536、540、558是由另一特定操作系统(即,Mac® OS X)的用户启动的,以及由于重新加载事件548、554、556是由第三操作系统(即,Android®)的用户启动的,因此,可以推断出,用户在那些特定操作系统522上加载网络资源512比较困难。最后,由于重新加载事件540、542、546、548是由用户从常用位置524且在近似的时间516启动的,因此,可以推断出,网络或其他困难在阻止用户从常用位置524在近似的时间516访问网络资源512。
[0055] 根据有关可由一个或多个用户启动的一个或多个重新加载事件的操作数据,可以得到任何其他结论或推论。例如,在访问网络资源的单个用户启动多个重新加载事件的情况下,重新加载事件可表明局部问题,或者表明关于代表用户的客户端侧应用或相关网络资源的操作性的特定错误或缺少知识,并且通常可被忽视。类似地,在提供新闻、体育或有关当前事件的其他信息的网站从用户接收大量重新加载事件的情况下,此类事件可能并不表明问题或与网站的交互性问题,而是表明对提供的信息增长了需求。此外,针对重新加载事件启动的日期或时间516或者特定位置524,或者加载事件的启动514与重新加载事件的启动516之间的经过时间516,图5的表格500中示出的数据可用来推出一个或多个阈值或界限。因此,本公开的系统和方法可监测重新加载事件的数量和频率,以及分析由此捕获的任何其他信息,以便将异常的例外重新加载事件与正常操作过程中通常可预期发生的那些事件区分开,并且设立与重新加载事件的接收或检测相关联的公差水平。
[0056] 在基于一个或多个重新加载事件确定网络资源是否存在任何问题或难题的过程中,可以监测到一个重要量度,该量度便是用户在重新加载事件启动后执行的下一步交互。例如,在正在查看网络浏览器上的网页的用户选择"刷新"按钮,且接着,一旦网页在该选择之后显示,该用户选择网页上显示的超链接的情况下,便可推断出,用户遇到某个问题或情况,阻碍了链接的显示或操作,最终促使用户选择"刷新"按钮。理论上,如果不存在此类问题或情况,那么在用户选择“刷新”按钮时(即使他或她能够这么做),他或她可能已选择链接。
[0057] 参考图6,示出了流程图600,该流程图呈现出了根据本公开,用于基于重新加载事件来分析网络资源的交互性的过程的一项实施方案。除非另有说明,否则前面是数字"6"的参考数字(如图6所示)表示的步骤类似于前面是数字"3"的参考数字(如图3所示)的步骤。
[0058] 在步骤605处,可由一个或多个服务器侧应用操作或维护在其上的系统将检测包插入到用于显示网页的代码中,并且在步骤610处,用户执行从浏览器请求网页的加载事件。例如,嵌入代码或脚本事件的子集适于记录浏览器名称和版本、操作系统、加载事件的位置和时间和日期以及重新加载事件启动时的重新加载事件,它们可加载到现有的代码集中,以通过服务器或服务器侧应用来生成网页,而且用户可将对应于网页的URL输入到浏览器上的地址栏中。在步骤615处,且响应于加载事件,浏览器从系统请求用于生成网页的代码,并且在步骤620处,系统将代码传输到浏览器。例如,浏览器可将针对贴在URL或与之相关联的IP地址指示的位置处的网页的调用传输到系统,并且所述系统可将用于显示网页的代码和任何相关联的内容传输到浏览器。
[0059] 在步骤640处,用户通过网络浏览器与网页进行第一次交互。例如,参考图2所示的网络浏览器200,用户可选择超链接图片262或超链接文本集264,或者与菜单栏210中示出的任何下拉菜单、选项栏220中示出的任何按钮或其他特征交互(即,进行选择),将URL或其他文件位置输入到地址栏230中,或者使用滑块栏240的工具来调整网页250的部分。在步骤645处,系统确定第一次用户交互是否包括重新加载事件。例如,再次参考图2所示的网络浏览器200,系统可确定用户是选择了"刷新"按钮226,还是执行了将导致网络浏览器当前显示的网页250的重新加载的任何其他事件,例如,通过选择对应于网页的书签或超链接。如果第一次用户交互并不包括重新加载事件,那么过程前进到步骤650,并将第一次用户交互传输到系统,且过程结束。
[0060] 如果第一次用户交互包括重新加载事件,那么过程前进到步骤655,其中浏览器记录操作信息,如检测包所指明,然后前进到步骤657,其中浏览器再次从系统请求用于生成网页的代码。例如,一旦重新加载事件已启动,那么浏览器便可记录浏览器的名称和版本、操作系统、加载事件的位置和时间和日期以及重新加载事件启动时的重新加载事件,并且系统可将代码重新传输到浏览器。在步骤670处,浏览器将网页显示给用户。
[0061] 在步骤672处,用户通过浏览器与网页进行第二次用户交互。例如,再次参考图2所示的网络浏览器200,用户可选择超链接图片262或超链接文本集264。在步骤675处,浏览器将步骤655处记录的操作信息以及第二次用户交互传输到系统。例如,响应于第二次用户交互,浏览器不仅可传输第二次用户交互中可包括的任何命令,而且可传输步骤655处记录的操作数据,即,有关浏览器或运行它的计算机的任何信息,或者与查看网页或重新加载事件相关联的环境。
[0062] 在步骤690处,系统分析从浏览器接收的操作信息,以及在系统端捕获的任何其他相关操作信息,以确定是否存在有关网页的任何潜在问题,尤其是针对第二次用户交互,并且过程结束。例如,系统可确定是否有任何操作原因造成用户没有在重新加载事件启动时执行第二次用户交互,并且采取任何补救动作来解决由此识别的任何故障。
[0063] 如上文论述,本公开的系统和方法可考虑在客户端侧(即,通过客户端侧应用或运行该应用的机器)以及服务器侧(即,通过服务器侧应用或运行该应用的服务器)观察捕获的操作信息。也如上文论述,本公开的系统和方法可还确定网络资源是否存在任何操作问题,并且识别此类问题可存在于与网络资源相关联的DOM内的一般位置。例如,在检测脚本或检测包被嵌入到用于显示网页的代码集内,并且包括代码中的一个或多个虚拟里程碑的情况下,基于将浏览器适当加载的虚拟里程碑的数量和位置与未适当加载的虚拟里程碑的数量和位置相比较,本公开的系统和方法可尝试明确代码和/或DOM内的特定位置。上文参考的此类虚拟里程碑可采用任何形式。
[0064] 参考图7A,示出用于显示网页的代码集700A。该代码集包括:代码子集710A或检测脚本,其适于在网页的加载过程中和/或在用户离开或刷新网页之后执行若干功能;以及代码子集730A,其用于将网页呈现在网络浏览器或其他客户端侧应用上。例如,元素
711A和712A致使客户端侧应用记录由该客户端侧应用造成的任何异常情况(即,方法中发生的错误),或者客户端侧应用生成的异常对象(即,有关此类错误的信息),并且及早捕获当前时间。元素713A和714A定义客户端数据对象或数据集,以及此类数据将被捕获的时间,而且元素715A、720A、721A和722A定义有关客户端数据对象或数据集的一系列变量,包括:任何保存的脚本错误(也就是" JSErrors");从元素712A处捕获的启动时间算起,初始加载事件网页的经过时间(也就是"持续时间(Duration)");出现在网页上的若干虚拟里程碑的列表或记录(也就是"面包屑(breadcrumbs)"),以及一系列操作度量(例如,URL)或网络浏览器尺寸。
[0065] 元素723A致使客户端侧应用收集客户端数据对象或数据集中的变量或信息,并且在事件执行后,元素724A致使此类变量或信息返回到一个或多个服务器侧应用。元素725A致使加载在网页上的虚拟里程碑被存储或记入注册表中,并且元素726A定义事件,该事件将致使客户端数据对象或数据集中的变量或信息被收集(也就是,离开网页或网页重新加载),并在步骤724A处被返回到服务器侧应用。
[0066] 代码子集730A包括各种加标签的元素,其用于显示报头732A、超链接文本集734A、列表标题736A以及无序列表738A。代码集730A也包括加标签的元素,其用于在网页上提供虚拟里程碑740A。如图7A所示,代码集700A中的里程碑740A包括标题为breadcrumbs.jpg且尺寸为五像素乘五像素的图片,所述图片将在网页上的报头、超链接文本集、列表标题和项目符号列表元素中的每一个之后显示。所述图片可具有任何色彩或可以无色,并且可采用任何形状或形式。虚拟里程碑740A中的每个均被提供系列中的数字,而且加载在网页上之后,可以记入到记录或其他注册表中。
[0067] 参考图7B,示出了网络浏览器700B,所述网络浏览器显示出图7A的代码集700A生成的网页。所述网页包括报头732B、超链接文本集734B、列表报头736B以及无序列表738B,它们分别由图7A所示的代码子集730A呈现。所述网页也包括多种虚拟里程碑740B,它们在显示在网页上的元素732B、734B、736B、738B中的每一个之后表示,所述元素也由图
7A所示的代码子集730A呈现。
[0068] 因此,在客户端侧应用的用户请求包括检测脚本的网页,其中所述检测脚本记录的操作信息涉及网页、客户端侧应用和/或运行客户端侧应用的计算机,或者服务器侧应用和/或运行服务器侧应用的服务器,并最终针对同一网页启动重新加载事件的情况下,通过确定在重新加载事件启动时,呈现了用于显示网页的代码中嵌入的哪个虚拟里程碑,本公开的系统和方法可确定在重新加载事件启动时客户端侧应用已经加载的网页量和程度。此类信息可在网页的正常操作过程中被捕获并返回到服务器侧应用,其中信息可定期在服务器侧被复查或以其他方式分析,并且基于其中可识别的任何问题,可以生成任何标签、电子消息和/或其他通知。根据一个或多个业务规则,可在服务器侧对此类数据执行复查或其他分析,业务规则可对派生变量或量度进行限制或设置阈值界限,例如,从客户端侧应用接收或检测到的任何重新加载事件的数量和/或频率、客户端侧应用处或由其造成的任何异常情况(即,异常事件)的数量或频率或者未能在客户端侧应用处加载的DOM内的元素或位置的数量或频率。根据本公开的一项特定实施方案,通过确定哪个虚拟里程碑被客户端侧应用适当加载以及哪个虚拟里程碑未能加载,可以识别促使用户启动重新加载事件的问题位置和/或类型。
[0069] 如上文论述,根据嵌入在用于显示网页的代码集内的检测脚本,检测到重新加载事件的客户端侧应用可以捕获有关网页、客户端侧应用本身或运行客户端侧应用的计算机的任何信息或数据或者与查看网页或重新加载事件相关联的任何环境。一旦重新加载事件被客户端侧应用检测到,此类信息或数据便可传输到服务器侧运行的一个或多个应用,以用于分析。
[0070] 根据本公开的一些其他实施方案,客户端侧应用可根据检测脚本持续捕获有关网页、客户端侧应用本身或运行客户端侧应用的计算机的操作信息或数据。在预定义事件发生后,客户端侧应用随后可将此类信息或数据传输到服务器侧应用,并且服务器侧应用可分析此类信息,以确定重新加载事件是否已经发生和/或尝试识别任何原因。在此类实施方案中,重新加载事件的检测以及对可能促成重新加载事件的任何因素的分析均可在服务器侧执行。
[0071] 参考图8,示出了根据本公开的一项实施方案的一对流程图800A、800B,所述流程图呈现出用于分析可分别在客户端侧应用和服务器侧应用上执行的网络资源的交互性的过程。流程图800A、800B中呈现的过程可在相应应用中彼此独立操作,并且示出了相应应用彼此交互的各个点。
[0072] 参考图8的流程图800A中呈现的过程,在步骤810处,操作客户端侧应用的用户请求网页。在步骤820处,客户端侧应用接收用于显示网页的代码集,并且所述代码集包括检测脚本,所述检测脚本用于在离开网页后(即,在未加载事件后)捕获客户端侧数据。例如,所述代码集可类似于图7A所示的代码集700A,并且可包括类似于图7A所示的代码子集710A的检测脚本,所述检测脚本可被编程以在离开网页后捕获操作信息并将其传输到服务器侧应用。
[0073] 一旦客户端侧应用接收到代码集,则在步骤830处,检测脚本可将客户端侧数据集初始化,即,可含有根据检测脚本捕获的数据的信息集。在步骤840处,用户离开网页之后,客户端侧应用可在步骤850处根据检测脚本将必要的客户端侧数据收集到数据集中,并且在步骤860处将数据集传输到服务器侧应用。例如,当网络浏览器的用户选择新的网页、关闭客户端侧应用或采取致使客户端侧应用离开网页的任何其他步骤时,客户端侧数据可被收集并传输到服务器侧应用。在步骤870处,如果用户离开网页包括请求另一网页,那么该过程返回到步骤810。如果用户的离开并不包括请求另一网页,那么该过程结束。
[0074] 如图8的流程图800B中呈现的过程所示,可在服务器侧应用上执行互补过程,所述服务器侧应用托管了客户端侧应用请求的一个或多个网页,例如,在图8的流程图800A中呈现的过程的步骤810处。参考图8的流程图800B,在步骤815处,服务器侧应用从客户端侧应用接收网页请求。如图8所示,步骤815可在流程图800A中呈现的过程的步骤810处被触发。在步骤825处,服务器侧应用将用于显示网页的代码传输到客户端侧应用,其中代码集包括检测脚本,所述检测脚本指示客户端侧应用在离开网页后捕获客户端侧信息或数据,并且将此类信息或数据传输到服务器侧应用。也如图8所示,步骤825可触发流程图800A中呈现的过程的步骤820。
[0075] 在步骤865处,服务器侧应用接收客户端侧信息或数据,并将其存储在一个或多个数据存储中。例如,如图8所示,步骤865可在流程图800A中呈现的过程的步骤860处被触发,并且数据集可被接收并与其他客户端侧数据相聚合。在步骤875处,客户端侧应用根据规则集并且以规则间隔扫描聚合的客户端侧数据。服务器侧应用可单独或者与从客户端侧应用或请求网页的其他客户端侧应用接收的其他客户端侧数据一起,以预定的周期性间隔(例如,每五分钟)或者在手动或自动启动后,分析客户端侧数据。在复查客户端侧数据时,服务器侧应用可确定任何未加载事件是否包括重新加载事件,并且在重新加载事件发生时分析从客户端侧应用接收的操作信息或数据,以确定是否有任何操作故障或错误可已促成重新加载事件,并且可能尤其在困扰服务器侧应用或者大体在困扰服务器侧。
[0076] 例如,规则集可包括"高刷新率"规则,其中客户端侧数据被分析,以确定重新加载事件或"刷新"的发生率是否超出预定阈值。规则集中的另一规则可将请求网页的日期或时间与重新加载事件被接收的日期或时间相比较,以确定加载网页的一个或多个方面或整个网页本身时问题可能存在于客户端侧还是服务器侧。又一规则可识别在重新加载事件发生时网页成功加载的程度,例如,通过确定重新加载事件发生时可已经由客户端侧应用加载的虚拟里程碑的数量或具体虚拟里程碑。任何类型的规则均可由服务器侧应用用来确定是否发生重新加载事件,以及客户端侧或服务器侧的任何方面是否可能造成任何此类重新加载事件。
[0077] 在步骤885处,如果记录或聚合在数据存储中的任何客户端侧数据表明规则集中的一个或多个规则被违反,那么过程前进到步骤895,其中一个或多个警告可被触发。如果没有表明此类规则被违反,那么过程返回到步骤875,其中数据存储的内容将来可按照一个或多个规律的间隔被扫描和分析。
[0078] 本公开的系统和方法也可适于持续为一个或多个网络资源提供检测脚本或检测包以及其他监测方式或者作为所述网络资源的一部分,并且适于分析用户与此类资源的交互,以确定资源或者响应于重新加载事件而维护资源的硬件或软件是否出现任何问题或不一致性。如果识别出任何此类问题或不一致性,那么可触发一个或多个警告或者其他指示,并且可手动或自动分析所述问题或不一致性。如果没有识别此类问题或不一致性,那么重新加载事件可被忽略或以其他方式处理,就好像重新加载事件并未表明与下列项相关联的任何缺陷或不足:资源的交互性、可能已请求资源的任何装置或者可维护或提供资源的任何服务器。
[0079] 参考图9,示出了流程图900,该流程图呈现出了根据本公开,用于基于重新加载事件来分析网络资源的交互性的过程的一项实施方案。除非另有说明,否则前面是数字"9"的参考数字(如图9所示)表示的步骤类似于前面是数字"6"的参考数字(如图6所示)的步骤,或者类似于前面是数字"3"的参考数字(如图3所示)的步骤。
[0080] 在步骤920处,系统将包括网络内容和检测包的代码传输到用户操作的浏览器。例如,系统可传输用于将网页呈现在浏览器上的代码,所述浏览器运行于移动电话、平板计算机、膝上型计算机或任何其他支持互联网的装置上,并且所述代码可具有嵌入其中的一个或多个元素或对象,以用于检测与浏览器或装置相关联的信息,或者响应于网络而采取的任何动作。在步骤930处,浏览器可将网络内容显示给用户。
[0081] 在步骤940处,用户通过浏览器对网络内容提供响应。例如,用户可选择或以其他方式与网络内容上显示或与之一起显示的任何信息交互(例如,按钮、框或超链接)。在步骤942处,浏览器记录用户响应时的浏览器和/或运行浏览器的装置的操作条件。例如,在用户选择浏览器上的链接或按钮的情况下,检测包可记录有关以下项的任何操作数据:网页(例如,成功显示在网页上的代码中描述的信息量和程度)、浏览器(例如,浏览器的型号和版本,以及查看历史)以及计算机(例如,有关计算机或任何相关部件的任何操作信息)。
[0082] 在步骤945处,浏览器确定用户响应是否包括重新加载事件,例如,选择"刷新"或"重新加载"按钮,或者选择超链接到与网络内容相关联的URL的文本集或对象集。如果用户响应并不包括重新加载事件,那么过程前进到步骤950,其中浏览器将用户响应传输到系统,然后前进到步骤965,其中系统基于用户响应识别合适的网络内容,之后返回到步骤920。
[0083] 如果用户响应包括重新加载事件,那么过程前进到步骤975,其中浏览器将记录的操作条件传输到系统,然后前进到步骤980,其中系统将记录的操作条件与用户响应时的预期操作条件进行比较。例如,系统可将浏览器完全加载的网络内容程度与提供用户响应时网络浏览器应已完全加载的网络内容程度相比较,以确定是否可存在任何加载错误。
[0084] 在步骤985处,如果步骤942处记录的操作条件与预期操作条件一致,那么可以理解,重新加载事件是用户不经意的动作,或并不表关于网络内容、浏览器或系统的任何操作问题或缺陷。因此,该过程接着前进到步骤850,其中浏览器将用户响应传输到系统,然后前进到步骤865,其中系统基于用户响应来识别合适的网络内容。
[0085] 如果步骤942处记录的操作条件与当时预期的操作条件不一致,那么可以理解,网络内容、浏览器或系统方面存在某种形式的问题或缺陷。因此,过程前进到步骤990,其中系统对记录的操作条件与预期的操作条件之间的不匹配进行分析,然后前进到步骤995,其中系统基于不匹配而启动至少一个警告(例如,传输一个或多个消息)。
[0086] 因此,通过将观察到的网络资源、请求网络资源的客户端侧应用和/或提供网络资源的服务器侧应用的操作条件相比较,例如,如图9中的流程图900所示,可以确定重新加载事件是表示网络资源或应用中任一存在更大的问题,还是仅仅是用户正常的有意动作。
[0087] 本公开的实施方案可根据以下条款进行描述。
[0088] 条款1. 一种非临时计算机可读介质,所述介质存储有计算机可执行指令,其中所述指令在执行时致使连接到网络并且具有至少一个计算机处理器的计算机系统使用所述至少一个计算机处理器生成用于显示网页的代码集,所述代码集包括代码子集,所述代码子集用于指示请求所述代码集的浏览器:捕获网页、所述计算机系统、请求所述代码集的所述浏览器或者运行请求所述代码集的所述浏览器的计算机装置的至少一个操作特性;通过网络来检测来自用户操作的浏览器的加载事件,所述加载事件包括对用于显示所述网页的所述代码集的第一请求;通过所述网络将所述代码集传输到所述用户操作的所述浏览器;通过所述网络来检测来自所述用户操作的所述浏览器的重新加载事件,所述重新加载事件包括对用于显示所述网页的所述代码集的第二请求;通过所述网络接收所述网页、所述计算机系统、所述用户操作的所述浏览器或者运行所述用户操作的所述浏览器的计算机装置的至少一个操作特性,其中所述至少一个操作特性由浏览器在所述重新加载事件启动时根据所述代码子集进行捕获;以及使用所述至少一个计算机处理器分析所述至少一个操作特性,以识别所述重新加载事件的成因。
[0089] 条款2. 根据条款1所述的介质,其中所述至少一个操作特性包括以下至少一个:所述网页的统一资源定位符(URL)、所述重新加载事件的启动时间和日期、所述加载事件的启动时间和日期、所述浏览器的类型以及在所述重新加载事件启动时,运行所述用户操作的所述浏览器的所述计算机的位置。
[0090] 条款3. 根据条款1所述的介质,其中所述重新加载事件包括以下至少一个:(a)选择所述网络浏览器上的刷新按钮;(b)选择超链接到所述网页的对象;(c)选择链接到所述网页的书签;以及(d)关闭所述浏览器、重新打开所述浏览器以及返回到所述网页。
[0091] 条款4. 一种用于确定网络资源的交互水平的计算机实施的方法,其包括:通过网络将用于生成网络资源的代码集从至少一个服务器传输到客户端侧应用,其中所述代码集包括检测脚本,所述检测脚本用于在针对所述网络资源的重新加载事件之后捕获有关所述网络资源、所述客户端侧应用或者所述至少一个服务器中的至少一个的操作信息;通过所述网络在所述至少一个服务器处检测所述客户端侧应用处针对所述网络资源的所述重新加载事件;通过所述网络在所述至少一个服务器处识别根据所述检测脚本从所述客户端侧应用捕获的所述操作信息;以及使用所述至少一个计算机处理器来分析所述操作信息,以确定所述网络资源的所述交互水平。
[0092] 条款5. 根据条款4所述的计算机实施的方法,其还包括以下步骤:通过所述网络在所述至少一个服务器处检测来自所述客户端侧应用的针对所述网络资源的加载事件。
[0093] 条款6. 根据条款4所述的计算机实施的方法,其中识别所述操作信息的所述步骤包括通过所述网络从所述客户端侧应用接收所述操作信息。
[0094] 条款7. 根据条款4所述的计算机实施的方法,其中识别所述操作信息的所述步骤包括在所述至少一个服务器处使用所述至少一个计算机处理器来捕获所述操作信息。
[0095] 条款8. 根据条款5所述的计算机实施的方法,其中所述重新加载事件包括以下至少一个:在所述客户端侧应用处选择刷新按钮;在所述客户端侧应用处选择重新加载按钮;在所述客户端侧应用处选择超链接图标;在所述客户端侧应用处选择超链接文本集;在所述客户端侧应用处选择书签;或者关闭所述客户端侧应用、重新打开所述客户端侧应用以及从所述客户端侧应用请求用于生成所述网络资源的所述代码集。
[0096] 条款9. 根据条款5所述的计算机实施的方法,其中所述操作信息包括以下至少一个:所述网络资源的统一资源定位符;针对所述网络资源的所述加载事件的启动与针对所述网络资源的所述重新加载事件的启动之间的经过时间;响应于异常情况,由所述客户端侧应用生成的至少一个异常对象;启动所述重新加载事件的所述客户端侧应用的类型;所述客户端侧应用加载的虚拟里程碑的数量;在所述重新加载事件启动时,维护在运行所述客户端侧应用的计算机上的操作软件集的版本;以及在所述重新加载事件启动时所述计算机的位置。
[0097] 条款10. 根据条款4所述的计算机实施的方法,其还包括以下步骤:使用所述至少一个计算机处理器生成用于生成所述网络资源的所述代码集;在所述至少一个服务器处,使用所述至少一个计算机处理器将所述检测脚本插入到用于生成所述网络资源的所述代码集,其中所述检测脚本用JavaScript®进行编程。
[0098] 条款11. 根据条款4所述的计算机实施的方法,其中用于生成所述网络资源的所述代码集包括用于在所述网络资源内生成至少一个虚拟里程碑的指令;以及其中所述检测脚本包括指令,所述指令用于:生成客户端数据对象;将有关至少一个异常情况的信息添加到所述客户端数据对象;将有关传输所述代码集与检测到所述重新加载事件之间的经过时间的信息添加到所述客户端数据对象;添加有关通过所述客户端侧应用生成所述至少一个虚拟里程碑的信息;将有关所述客户端侧应用的信息添加到所述客户端数据对象;以及将所述客户端数据对象传输到所述至少一个服务器,以检测所述重新加载事件。
[0099] 条款12. 根据条款11所述的计算机实施的方法,其还包括在所述至少一个服务器处识别多个业务规则,以及在所述至少一个服务器处分析所述客户端数据对象,以确定是否违反了所述业务规则中的任一。
[0100] 条款13. 根据条款12所述的计算机实施的方法,其中所述业务规则包括以下至少一个:重新加载事件的阈值数量、异常情况的阈值数量以及虚拟里程碑的阈值数量。
[0101] 条款14. 根据条款4所述的计算机实施的方法,其还包括以下步骤:响应于所述重新加载事件,通过所述网络将用于生成所述网络资源的所述代码集从所述至少一个服务器传输到所述客户端侧应用。
[0102] 条款15. 根据条款4所述的计算机实施的方法,其中所述检测脚本还适于致使所述客户端侧应用将所述操作信息存储在数据库中。
[0103] 条款16. 根据条款4所述的计算机实施的方法,其还包括以下步骤:在所述至少一个服务器处,接收有关所述重新加载事件后的与所述网络资源的用户交互的信息,其中分析所述操作信息以确定所述网络资源的所述交互水平的所述步骤包括识别与所述重新加载事件后的与所述网络资源的所述用户交互相关联的所述代码集的一部分。
[0104] 条款17. 根据条款4所述的计算机实施的方法,其还包括以下步骤:识别所述网络资源、所述客户端侧应用或所述至少一个服务器中的至少一个的预期操作状态,其中分析所述操作信息以确定所述网络资源的所述交互水平的所述步骤包括将所述操作信息与所述预期操作状态相比较。
[0105] 条款18. 根据条款17所述的计算机实施的方法,其中如果所述操作信息与所述预期操作状态一致,则确定所述网络资源的所述交互水平足够,以及其中如果所述操作信息与所述预期操作状态不一致,则传输至少一个警告。
[0106] 条款19. 根据条款9所述的计算机实施的方法,其还包括以下步骤:将根据所述检测脚本从所述客户端侧应用捕获的所述操作信息存储在与所述至少一个服务器相关联的数据存储中,其中所述数据存储包括在针对所述网络资源的先前重新加载事件之后根据所述检测脚本从多个其他客户端侧应用捕获的,有关所述网络资源、其他客户端侧应用或者所述至少一个服务器中的至少一个的操作信息。
[0107] 条款20. 根据条款19所述的计算机实施的方法,其中分析所述操作信息以确定所述网络资源的所述交互水平的所述步骤包括基于所述数据存储中包括的所述操作信息,确定所述网络资源的重新加载事件的阈值频率,并且如果所述重新加载事件超出所述阈值频率,则传输至少一个警告。
[0108] 条款21. 根据条款19所述的计算机实施的方法,其中分析所述操作信息以确定所述网络资源的所述交互水平的所述步骤包括确定所述网络资源的重新加载事件的阈值经过时间,并且如果所述经过时间超出所述阈值经过时间,则传输至少一个警告。
[0109] 条款22. 根据条款19所述的计算机实施的方法,其中分析所述操作信息以确定所述网络资源的所述交互水平的所述步骤包括将所述重新加载事件启动时所述计算机的所述位置与所述先前重新加载事件中的至少一个的位置相比较。
[0110] 条款23. 根据条款19所述的计算机实施的方法,其中分析所述操作信息以确定所述网络资源的所述交互水平的所述步骤包括将所述重新加载事件启动的时间和日期与所述先前重新加载事件中的至少一个的时间和日期相比较。
[0111] 条款24. 根据条款4所述的计算机实施的方法,其中所述操作信息包括有关所述重新加载事件启动时由所述客户端侧应用加载的所述网络资源的一部分的信息,以及其中分析所述操作信息以确定所述网络资源的所述交互水平的所述步骤包括以下步骤:识别所述代码集的一部分,所述部分对应于所述重新加载事件启动时由所述客户端侧应用加载的所述网络资源的那部分。
[0112] 条款25. 根据条款9所述的计算机实施的方法,其还包括以下步骤:识别针对所述网络资源启动所述重新加载事件的所述客户端侧应用的用户;以及识别所述用户启动的重新加载事件的经过时间阈值,其中如果所述经过时间超出所述经过时间阈值,则确定所述网络资源的所述交互水平足够,以及其中如果所述经过时间并未超出所述经过时间阈值,则生成至少一个警告。
[0113] 条款26. 一种连接到网络的计算机系统,其中所述计算机系统包括至少一个计算机处理器和至少一个数据存储,其中所述计算机系统适于执行计算机程序,从而致使所述计算机系统执行用于确定网站的交互水平的方法,以及其中所述方法包括以下步骤:通过网络接收加载事件,所述加载事件包括来自运行在客户端装置上的网络浏览器的对用于显示所述网站的代码集的第一调用,其中所述代码集存储在所述至少一个数据存储上,以及其中所述网站包括至少一个虚拟里程碑;使用所述至少一个计算机处理器来改进所述代码集,以便包括检测包,其中所述检测包包括脚本指令,所述脚本指令用于(a)致使所述网络浏览器创建数据对象,(b)致使所述网络浏览器将有关任何异常情况的信息添加到所述数据对象,(c)致使所述网络浏览器将有关加载事件之后的经过时间的信息添加到所述数据对象,(d)致使所述网络浏览器将有关所述至少一个虚拟里程碑的信息添加到所述数据对象,(e)致使所述网络浏览器将有关所述网络浏览器的状态的信息添加到所述数据对象,以及(f)致使所述网络浏览器响应于重新加载事件而将所述数据对象传输到计算机系统;通过所述网络将改进的代码集传输到所述客户端装置;通过所述网络来检测所述重新加载事件,其中所述重新加载事件包括来自运行在所述客户端装置上的所述网络浏览器的对用于显示所述网站的所述代码集的第二调用;通过所述网络从所述网络浏览器接收所述数据对象;以及分析所述数据对象中的所述信息,以确定所述网站的所述交互水平。
[0114] 条款27. 根据条款26所述的计算机系统,其中所述方法还包括以下步骤:使用所述至少一个计算机处理器来识别未能适当加载在所述客户端装置上的所述至少一个虚拟里程碑的第一数量;以及使用所述至少一个计算机处理器来识别所述改进代码集的一部分,所述部分对应于未能适当加载在所述客户端装置上的所述至少一个虚拟里程碑。
[0115] 条款28. 根据条款26所述的计算机系统,其中所述方法还包括以下步骤:通过所述网络从所述网络浏览器接收与所述网页的一部分进行的用户交互,其中分析所述操作信息以确定所述网站的所述交互水平的所述步骤包括以下步骤:使用所述至少一个计算机处理器来识别对应于所述网页的所述部分的所述改进代码集的一部分,所述网页的部分对应于所述用户交互。
[0116] 条款29. 根据条款26所述的计算机系统,其中分析所述数据对象中的所述信息的所述步骤包括以下步骤:将所述数据对象中的所述信息与根据所述脚本指令在针对所述网站的先前重新加载事件之后从多个其他网络浏览器捕获的信息相比较。
[0117] 尽管本文已使用用于实现本公开的示例性技术、部件和/或过程来描述本公开,但所属领域的技术人员应理解,可使用或执行其他技术、部件和/或过程,或本文所述的技术、部件和/或过程的其他组合和顺序,以实现本文所述的相同功能和/或结果,并且这被包括在本公开的范围内。
[0118] 应理解,除非本文中以其他方式明确或暗示地说明,否则有关本文特定实施方案描述的任何特征、特性、替代方案或修改也可与本文所述的任何其他实施方案一起应用、使用或合并。此外,至于本文所述的本公开的一个或多个方法或过程(包括但不限于,图3、图6和图8所示的流程图),所述方法或过程中列出的步骤的顺序不应被解释为限于本发明,而是任何数量的方法或过程步骤可以采用任何顺序和/或并行组合,以实施本文所述的方法或过程。另外,本文附图并非按比例绘制。
[0119] 除非另行明确说明,或者另外根据上下文使用时理解,否则条件性语言,例如,尤其,"可"、"可以"、"可能"或"也许",大体意图传达以下内容:某些实施方案可包括(但并不要求)某些特征、元件和/或步骤。因此,这些条件性语言大体并不意图暗示:特征、元件和/或步骤是一项或多项实施方案无论如何都需要的,或者在有或没有用户输入或提示的情况下,一项或多项实施方案必然包括决策逻辑,不论这些特征、元件和/或步骤均包括其中还是将在任何特定的实施方案中执行。
[0120] 尽管已参考示例性实施方案描述和说明了本发明,但在不脱离本公开的精神和范围的情况下,可在本公开中且对本公开进行上述和各种其他添加和省略。
QQ群二维码
意见反馈