CN100336031C - 用于重放预先确定的通过互联网的路径的方法 - Google Patents

用于重放预先确定的通过互联网的路径的方法 Download PDF

Info

Publication number
CN100336031C
CN100336031C CNB008168571A CN00816857A CN100336031C CN 100336031 C CN100336031 C CN 100336031C CN B008168571 A CNB008168571 A CN B008168571A CN 00816857 A CN00816857 A CN 00816857A CN 100336031 C CN100336031 C CN 100336031C
Authority
CN
China
Prior art keywords
list
request
url
residue
group
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.)
Expired - Lifetime
Application number
CNB008168571A
Other languages
English (en)
Other versions
CN1589434A (zh
Inventor
克莱·戴维斯
沃尔特·R·勃德威尔
米切尔·C·克罗伯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BMC Software Inc
Original Assignee
BMC Software Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by BMC Software Inc filed Critical BMC Software Inc
Publication of CN1589434A publication Critical patent/CN1589434A/zh
Application granted granted Critical
Publication of CN100336031C publication Critical patent/CN100336031C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/875Monitoring of systems including the internet

Abstract

一种用于重放预先确定的通过一组网页的路径的系统和方法。所述系统和方法包括从请求历史记录中按照时间顺序选择一个保存的请求。所述保存的请求相应于在一组网页中的一个网页作出的一组用户请求。此外,本发明包括确定保存的请求是否是表单请求,如果是,就在所述网页组中的网页上查找一个最佳适配的表单,并对最佳适配的表单发出重放请求。如果保存的请求不是表单请求,则向最佳适配URL发出重放请求。

Description

用于重放预先确定的通过互联网的路径的方法
技术领域
本发明总体上涉及网页系统和方法,尤其涉及用于从中间服务器重放预先确定的网络路径的软件系统和方法。
背景技术
随着网站成为普遍存在的,企业在设置其网站的性能目标和质量标准方面的兴趣不断增加。实现这些目的的一种方法是模拟用户对公司网站的经历。通过模拟用户的经历,网站所有者可以判断在其网页中的链接和资源的完整性,并针对由企业规定的操作目标评价用户的经历。此外,公司的信息技术部门将能够更好地跟踪和测量关键的网络资源。
模拟用户通过网站的路径的一种方法是在代理服务器记录由用户发出的所有的请求,记录和每个请求有关的附加数据,并打开套接口,向回发送所通过的确切数据。这种技术可以用于只含有静态网页的网站。然而,不断增加的许多网站是动态的,因而,用于重放用户通过网络的路径的方法必须能够考虑到例如会话ID和表单等内容。因为动态内容能够使网页会话过期或者随时间而改变,简单地重放一系列的请求经常会导致由目标网站返回的错误。
当前用于模拟通过网站的路径的方法没有充分针对动态网站。已研发过Microsoft Web Stress Analyzer Tool(微软网络强化分析工具),用于在使网站在互联网上可用之前对网站进行强化测试。该微软工具只支持基于cookie的动态网站技术,而不支持其它技术,也不支持在浏览器和网站之间的HTTPS通信。此外,该微软工具需要将软件下载和安装到用户的计算机上。
发明概述
本发明提供一种网络路径重放系统和方法,其中基本上消除或减少了和以前研发的网络路径重放系统相关的缺点和问题。更具体地说,本发明提供一种用于重放预先确定的通过一组网页的路径的系统和方法。所述用于重放预先确定的网络路径的方法包括从请求历史记录中选择和保存的URL相关的保存的请求。如果保存的请求是表单请求,则本发明可以由可以对其作出重放请求的始发网页确定最佳适配的表单。或者,如果请求不是表单请求,则本发明在可以对其作出重放请求的始发网页上选择一个最佳适配的URL。在选择最佳适配的表单或者最佳适配的URL作为目标URL之后,本发明对所述目标URL作出重放请求。
本发明和以前研发的系统相比的主要优点是使得能够重放通过动态网页的路径。
本发明具有的另一个技术优点是,本发明是完全基于网络的。
本发明的另一个重要的技术优点是,本发明在工业标准服务器上运行。
本发明的另一个重要的技术优点是支持HTTPS通信。
本发明的另一个重要的技术优点是其不要求用户在其计算机上安装附加的软件。
本发明提供的一个重要优点是,和以前研发的方法相比,本发明能够重放通过大量的网页的路径。
附图说明
为了更完整地理解本发明及其优点,请结合附图参阅下面的说明,其中相同的标号表示相同的特征,其中:
图1示意地表示本发明的可以记录和重放路径的系统;以及
图2是说明本发明的用于重放通过一组网页的路径的一个实施例的流程图。
本发明的详细说明
附图表示本发明的优选实施例,在所有的附图中,相同的标号表示相同或相应的部分。
在本发明的说明中,“内容”指的是响应用户的命令(例如当用户选择有关链接时)由网页返回用户的浏览器的HTML和其它的数据。“静态”内容指的是被返回用户的浏览器的不随时间改变的内容。“动态”网页指的是可以包含不同的未预格式化的内容的网页,所述内容对同一个用户的指令的响应可以随时间而改变。“路径”指的是具有特定顺序的一系列网络请求。
本发明提供一种用于从中间服务器重放用户通过网络的路径的系统。图1示意地表示可以实施本发明的系统,用于记录和重放用户通过网络的路径。用户可以通过网络浏览器20访问在中间服务器10的软件程序5。在一个实施例中,用户访问在中间服务器10的软件程序之后,可以使用网络浏览器20向软件程序5提供一个路径名(例如“路径1”)和一个起始URL。所述路径名和起始URL可以被保存在数据库15中。路径名用于分类由用户确定的特定的路径,而起始URL是用户路径的开始点。例如,一旦用户点击“开始”按钮,表示他们准备好开始确定路径,软件程序5便在网络浏览器20中打开一个显示窗口。所述显示窗口是一个在网络浏览器20中的新窗口,在其中将显示响应用户的命令而收到的内容。网络浏览器20对软件程序5发出起始URL的请求,软件程序5在把所述请求保存在数据库15中之后,便把所述请求发送给目标网服务器30。然后,目标网服务器30向中间服务器10返回相应于和请求中的URL相关的网页35的内容。然后,软件程序5可以调整所述内容,使得由用户根据网页35的内容作出的任何另外的请求将被通过中间服务器10发送。网页内容的调整可以按照在美国专利申请号为 No.09/710214(美 国专利No.6954783),名称为“A System and Method of Mediating a WebPage”(调整网页的系统和方法),发明人为Clay Davis,Walter Bodwell和Michael Klobe,申请日为2000年11月10日的专利申请中所述的方法进行,该专利的全文被包括在本说明中作为参考。
软件程序5在调整所述内容之后,便可以把调整后的内容发送到网络浏览器20的显示窗口。在用户看来,在网络浏览器20的显示窗口中显示的网页和其直接访问目标网服务器30所看到的显示看起来可以完全一样。不过,网络浏览器20的显示窗口可以不用导航或状态条而被打开。这样,用户便不会无意中不通过在显示窗口显示的调整后的内容访问URL,而在网络浏览器20的顶部直接输入URL,从而绕过路径确定过程。
在用户针对新网页36(例如“目标网页36”)作出附加请求之后,网页35成为“始发网页35”。目标网页36可以和与始发网页35相同的一个目标网服务器30相关,或者和一个不同的目标网服务器30相关。响应所述的附加请求,软件程序5再次调整目标网页36的内容,并把调整后的内容返回浏览器20。应当理解,始发网页35和目标网页36两者都被调整。如果用户从目标网页36发出附加请求,则目标网页36对于另一个目标网页36而言等同于始发网页35,并依此类推。例如,如果“网页A”和起始URL相关,并且用户根据调整的“网页A”的内容请求“网页B”,则对于目标“网页B”,“网页A”将是始发网页35。软件程序5将调整“网页B”的内容,并把调整后的内容发送到网络浏览器20。如果用户从“网页B”发出请求“网页C”的附加请求,则“网页B”成为目标“网页C”的始发网页35。“网页A”,“网页B”和“网页C”可以和同一个网服务器相关,或者各自和一个不同的网服务器相关。当用户根据网络浏览器的显示窗口中显示的内容输入附加请求时,软件程序5就在数据库15中保存所述的附加请求。
除了把请求保存到数据库15中之外,软件程序5还可以记录随用户的请求发出的或者在网页35的内容中被返回的内容,例如cookies,头信息,和表单参数。用这种方式,中间服务器10可以建立含有相应于用户做的每个请求的信息的请求历史记录。一般地说,软件程序5可以在数据库15中保存需要服务器干预的所有的交互作用,作为所述路径的“请求历史记录”。当用户完成通过网络的路径的确定时,用户可以停止路径确定过程,并且所述路径在由用户提供的路径名下被保存。
在本发明的重放过程中,软件程序5访问在数据库15中存储的请求历史记录,并按照作出所述请求的原始顺序发出所述请求。此外,软件程序5将发出特定网页所需的合适的头信息,cookies与/或表单参数。目标网服务器30将返回相应于每个请求的目标网页36的合适的内容。对于每个附加的请求,前一请求的目标网页36将成为下一个重放请求的始发网页。软件程序5将继续从请求历史记录发出请求,直到由用户确定的路径被完全重放。
图2是表示按照本发明用于重放通过一组网页的预定路径的一个实施例的流程图。在步骤60,软件程序5可以访问数据库15中的请求历史记录,所述数据库含有例如起始URL、附加请求、头信息,cookies,表单请求是否是POST或GET、在始发页35的内容中的URL的地址以及表单参数等信息。在本发明的第一次迭代中,所述请求相应于用户路径的起始URL。因为第一请求是对起始URL作出的,程序5一般不必发送相应于动态内容的信息。不过,附加请求可以要求软件程序5发送其属性为动态的信息。从数据库15存储的请求历史记录中,在步骤70,软件程序5选择一个保存的请求。该保存的请求一般按照时间顺序选择,使得用户的路径可被正确地重放。
在选择特定的保存请求之后,在步骤80,软件程序5可以确定该保存的请求是否是表单请求。特定的URL请求可以被识别为表单请求,因为在数据库15存储的请求历史记录中,URL可能已经被标记为和一个“FORM”标记相关。如果没有找到这种相关,则所述请求不是表单请求。如图2所示,如果保存的请求是表单请求,则本发明在执行步骤120之前执行步骤90和100。如果保存的请求不是表单请求,则本发明在执行步骤120之前执行步骤110。
如果保存的请求是表单请求,则在步骤90,软件程序5可以确定对于哪个表单应当稍后作出重放请求。与简单地对保存的请求中的URL发送重放请求相比,更多涉及的可能是确定应当对其作出重放请求的表单。始发表单35的“当前配置”,即当路径被重放时遇到的配置,可能和用户最初确定所述路径时遇到的配置不同。此外,始发页35的当前配置可能含有一个以上的可以对其作出重放请求的表单,并且甚至可能含有共用一个公共URL的多个表单。考虑到这些困难,在步骤90,软件程序5从位于始发页35的当前配置上的潜在表单中选择最佳适配的表单。
选择最佳适配的表单的方法和用户最初确定路径时保存的表单参数有关。表单参数可以用几种方法产生。第一,当用户最初填写所述表单时产生表单参数。第二,根据用户的输入,通过JavaScript由网络浏览器20产生或者修改表单参数。最后,表单参数可以被包括在表单本身中,值由目标网服务器30产生。由JavaScript产生的或者被包括在表单本身中的表单参数对于用户通常是隐藏的。相应于保存的请求的保存的表单参数通常包括由用户填写的表单参数。不过,如果网络浏览器20利用JavaScript产生的表单参数代替或者改变用户提交的表单参数,则JavaScript产生的表单参数将被保存在请求历史记录中,而不保存用户提交的表单参数。例如,如果用户点击一个复选框,而JavaScript已经把其改变为“1”,则当路径被重放时,重放请求只包括“1”,而不包括检验所述框的操作。这样做是因为中间服务器10只需要提交会由目标网服务器30产生合适响应的参数。
如果保存的请求是表单请求,则在步骤90,软件程序5读出始发页35中的标记,确定是否有和保存的请求中的URL匹配的任何表单。不包括匹配的URL的任何表单将被拒绝。用于在网页35上筛选出剩余的表单的步骤的顺序取决于保存的请求是“POST”还是“GET”。软件程序5可以区分“POST”和“GET”,这是因为在用户最初确定路径时表单请求的分类被保存在请求历史记录中。如果保存的请求是POST请求,则在始发网页35中的每个不要求被保存在请求历史记录中并且将被包括在重放请求中的所有参数的表单被拒绝。例如,如果“name”参数在请求历史记录中和一个保存的请求相关,则在始发网页35上的不要求“name”参数的每个表单将被拒绝。如果始发网页上仍然具有一个以上的潜在表单,则本发明将拒绝网页35上的不含有被保存在所述保存的请求的请求历史记录中的所有隐藏的参数的所有表单。如果在经过这些初步筛选处理之后仍然剩下一个以上的潜在表单,则以预先确定的方式选择一个表单。例如,可以选择网页上第一个剩下的表单,或者随机选择一个剩下的表单。应当理解,可以使用任何预定的选择方法从剩余的合格的表单中选择最佳适配的表单。
如果所述请求是GET,则拒绝任何不符合保存的请求中的URL的表单的第一次筛选和表单请求是POST时的相同。不过,第二和第三次筛选被调换顺序。在GET的情况下,和在POST的情况下相反,软件程序5首先拒绝所有不含有在保存的请求的请求历史记录中保存的所有隐藏参数的表单。如果在网页35上剩下一个以上的潜在表单,则本发明拒绝所有不含有保存在请求历史记录中的会被包括在重放请求中的所有参数的表单。在前文针对POST请求的说明中已经看到,在始发页35上的表单可能不需要在请求历史记录中保存的所有参数。如果在进行初期筛选之后仍然剩下一个以上的潜在表单可用,则和在POST请求的情况下一样,用预定的方式选择表单。例如,可以选择页面上剩下的第一个表单或者随机选择剩下的表单。同样,应当理解,可以使用任何方式从合格的表单中选择一个表单。
在确定一个请求应当和哪个表单相关之后,在步骤100,软件程序5可以将呈现在网页35的当前配置中的表单上的参数与请求历史记录中保存的参数中的参数合并。软件程序5可以通过比较表单参数是如何产生的,来确定哪些参数要包括在重放表单参数中。如果用户输入了一个表单参数,则该参数将被包括在重放表单参数中,除非,如上所述该参数被JavaScript改变了。如果表单参数在网络浏览器20由JavaScript修改或产生,则JavaScript产生的参数而不是用户输入的参数将被包括在重放表单参数中。如果在用户作出初始请求时提交了一个表单参数,但是所述参数不是用户输入的或JavaScript产生的,则软件程序5假定所述参数被包括在表单本身中。此时软件程序5则用在始发网页的当前配置的表单中提供的表单参数代替在请求历史记录中初始保存的表单参数。作为一个例子,在始发网页35中的一个表单可能包括一个当路径被最初确定时的会话ID。如果重放请求包括在请求历史记录中保存的表单参数,则在作出重放请求时可能发生错误。所述错误可以使“会话过期”的信息返回软件程序5,因而用户的路径将不能被正确地模拟。因此,软件程序5将利用包括在网页35的当前配置的表单中的会话ID代替在请求历史记录中存储的会话ID,借以阻止发生过期错误。用这种方式,软件程序5可以把合适的内容放入被更新的表单字段(form field)中(例如会话ID,时间信息等)。
如果在步骤80软件程序5判断保存的请求不是表单请求,则软件程序5在步骤110确定在网页35中的哪个URL链接对于保存的请求中的URL是最佳适配的。如果在网页35上的链接中从保存的请求中找到了精确的URL,则在下一个请求中使用这个精确的URL。如果不能找到精确的URL,则本发明确定是否能在网页35上的和原始的URL请求的URL地址相应的地址找到不匹配的URL。
在本文中,“地址”指的是在网页35上的最初找到一个保存的请求的位置。当用户确定路径时,软件程序5能够对请求的每个URL分配一个网页地址。所述地址可以根据网页35中的标记的结构和属性进行分配。例如,给定下面的网页:
    <html>

    <head>

      <base href=http://www.company.com/server/home.html>

      <title>Server</title>

    </head>

    <body>

      <a href=first.html>Click HereFirst</a>

      <a href=http://www.company.com/next.html>Click Here Next</a>

    </body>

    </html>
该结构化网页的根是一个<html>标记。这个标记含有两个标记,即<head>标记和<body>标记。<head>标记含有<title>标记,等等。这种结构使得在HTML页上的各个属性值能够被分配给一个地址。例如,具有文本“Click Here Next”的<a>的地址是“html[0].body[0].a[1].href[0]”。这个地址识别标记或属性在网页35上的精确位置。如果在网页35中没有找到保存的请求中的精确的URL,则可以使用在相应的地址处的URL。例如,如果在确定路径网页35时用户点击了“Click Here Next”,但是不能找到相应的URL http://www.company.com/next.html,则重放请求将对位于网页35中的地址“html[0].body[0].a[1].href[0]”处的URL作出。应当理解,可以使用能够产生在网页35的HTML内的一个位置的其它的寻址方式。
或者,如果在网页35中不能找到保存的请求中的精确的URL,则软件程序5可以匹配一个部分的URL。例如,部分URL匹配可以包括根据URL之间匹配的字符的数量使有些不同的URL和保存的请求中的URL匹配。
当网络浏览器20通过JavaScript修改在网页35中最初找到的URL时,软件程序5也可以匹配URL。例如,如果JavaScript在对URL作出初始请求时对URL附加了个字符串,则具有附加字符串的请求将被存储在请求历史记录中。不过,当软件程序5在重放期间针对保存的请求中使用的精确URL解析网页35的当前配置时,找不到所述URL,这是因为在网页35中没有所述字符串。软件程序5可以对在网页35的最初找到保存的请求中的URL的地址上找到的URL附加上在请求历史记录中保存的字符串。
总之,在步骤110,软件程序5可以用几种方式找到一个最佳适配的URL。软件程序5可以使用精确匹配或部分匹配在网页35的当前配置中选择一个最佳适配的URL。软件程序5也可以使用一个地址系统来选择最佳适配的URL。软件程序5也可以使用部分匹配和地址的组合来选择最佳适配的URL,尤其是当保存的请求中的URL是利用JavaScript修改的结果时。
如图2所示,在选择最佳适配的URL(步骤110)之后,或者在选择并填充最佳适配的表单(步骤90和100)之后,在步骤120,软件程序5可以可选地对重放请求附加合适的头信息。许多网页是浏览器相关的,即,它们根据所用的浏览器的类型返回不同的数据。为了精确地模拟用户的路径,软件程序5发出被存储在请求历史记录中的头信息,使得响应的网页将返回同样的内容,就好像重放请求是由用户的浏览器作出的一样。此外,如果目标网页36要求用户的身份验证,例如通过返回状态码401,则本发明可以返回具有验证头信息的请求。因为用户的模拟不涉及实际的用户,所以没有理由访问目标网页36的验证窗口,因而所述窗口可以被绕开。
在步骤130,软件程序5可以根据cookie的创建细节确定是否应当把cookie返回目标网页36。此外,软件程序5可以修改cookie,使得目标网页36不会返回过期错误。例如,如果用户最初在3月3日访问过一个网页,并且返回有效期一天的cookie,则本发明可以修改cookie,使得在cookie中返回的日期是路径重放的当前日期,例如10月17日,有效期一天。日期可以修改,这是因为在确定路径时软件程序5在数据库15中存储了cookie的创建细节。因为软件程序5可以修改cookie,使得目标网页36不会返回错误信息,所以可以在以后通过动态网页重放用户的路径。
在确定合适的目标网页36和要被包括的数据之后,在步骤140,软件程序5可以作出重放请求。重放请求模拟应当由用户发出的命令,以便重放由用户在先前确定的路径。在对目标网服务器30发出重放请求之后,软件程序5确定目标网服务器30是否响应了所述重放请求。如果目标网服务器30响应了,则使用被返回的目标网页36的当前配置作为请求历史记录中的下一个请求的始发页35。或者,目标网服务器30可能不响应,或者返回错误信息。软件程序5可能收到“超时错误”或者“网页未找到”错误,表示合适的目标网服务器30或者目标网页36没有找到。如果软件程序5收到这种性质的错误,在步骤160,软件程序5可以通过电子邮件或其它方法向用户通知该错误信息,并终止重放过程。如果目标网服务器30利用目标网页36响应,则在步骤170,软件程序5可以对请求历史记录中保存的每个请求重复本发明的步骤60-170,从而重放由用户最初确定的路径。
本发明提供了一种用于重放预先确定的路径的系统和方法,使得能够模拟通过静态和动态网页的路径。这使得和以前研发的用于重放通过网页的路径的方法相比,本发明可以应用于数量大得多的网页。
上面对本发明进行了详细说明,应当理解,不脱离由所附权利要求限定的本发明的构思和范围,可以作出许多改变和改型。

Claims (10)

1.一种用于重放预先确定的通过一组网页的路径的一部分的方法,包括:
从请求历史记录中选择相应于一个保存的URL的保存的请求;
如果该保存的请求是表单请求,则从始发网页中的一组表单中选择一个最佳适配的表单作为目标URL,其中选择一个最佳适配的表单的步骤包括:如果一个潜在表单的URL不以所述保存的URL开始,则拒绝所述潜在表单;如果表单请求是POST,如果一组剩余表单中的某个剩余表单不要求如果对该剩余表单作出重放请求就应当被包括在重放表单参数中的每个参数,则拒绝该剩余表单;如果所述剩余表单组仍然含有一个以上的剩余表单,拒绝该组剩余表单中不要求所述保存表单参数组中的所有隐藏的表单参数的所有剩余表单;以及,如果在剩余表单组中仍然有一个以上的剩余表单,则以预定的方式从所述剩余表单组中选择一个最佳适配的表单,否则,就选择所述剩余表单组中所述剩余的一个表单作为最佳适配的表单;
如果所述保存的请求不是表单请求,则在始发网页上选择一个最佳适配的URL作为目标URL;以及
对所述目标URL发出重放请求,其中所述重放请求包括一组重放表单参数,所述一组重放表单参数包括:一组保存的表单参数;以及一组合并的表单参数,其中所述一组合并的表单参数包括来自始发网页的当前配置的参数。
2.如权利要求1所述的方法,其中选择最佳适配的表单的步骤还包括:
如果一个潜在表单的URL不以所述保存的URL开始,则拒绝所述潜在表单;
如果表单请求是GET,如果剩余表单组中的某一个不要求被包括在保存的表单参数中的所有隐藏的表单参数,则拒绝该剩余表单;
如果所述剩余表单组仍然含有一个以上的剩余表单,如果所述剩余表单组中的一个第二剩余表单不要求如果对该第二剩余表单作出重放请求就应当包括在重放表单参数中的所有表单参数,则拒绝该第二剩余表单;以及
如果在剩余表单组中仍然有一个以上的剩余表单,则以预定方式从所述剩余表单组中选择一个最佳适配的表单,否则,就选择所述剩余表单组剩余的一个表单作为最佳适配表单。
3.如权利要求1所述的方法,选择最佳适配的URL的步骤还包括:
如果一个链接的URL和保存的URL精确地匹配,则选择所述链接作为最佳适配的URL;
如果所述链接的URL和保存的URL不精确匹配,则选择位于一个和保存的请求相关的地址上的不匹配的URL作为最佳适配的URL。
4.如权利要求3所述的方法,还包括:如果不匹配的URL和保存的URL部分地匹配,则选择所述不匹配的URL作为最佳适配的URL。
5.如权利要求4所述的方法,还包括对不匹配的URL附加一个在保存的请求中包含的字符串,从而形成用于重放请求的URL。
6.如权利要求1所述的方法,其中所述重放请求包括一组头信息,使得目标网页返回相同的内容,就好像重放请求是由特定类型的浏览器作出的一样。
7.如权利要求1所述的方法,其中所述重放请求包括一组cookie,并且所述一组cookie包含一个相应于保存的cookie的修改的cookie,其中所述修改的cookie已被修改,使得目标网页返回的内容就好像重放请求是由新的用户作出的那样。
8.如权利要求1所述的方法,还包括确定保存的请求是POST还是GET。
9.一种用于重放通过一组网页的预先确定的路径的一部分的方法,包括:
(a)从请求历史记录中选择相应于一个保存的URL的一个保存的请求;
(b)如果所述保存的请求是表单请求,则从始发网页中的一组表单中选择一个最佳适配的表单作为目标URL,其中选择一个最佳适配的表单的步骤包括:如果一个潜在表单的URL不以所述保存的URL开始,则拒绝所述潜在表单;如果表单请求是POST,如果一组剩余表单中的某个剩余表单不要求如果对该剩余表单作出重放请求就应当被包括在重放表单参数中的每个参数,则拒绝该剩余表单;如果所述剩余表单组仍然含有一个以上的剩余表单,拒绝该组剩余表单中不要求所述保存表单参数组中的所有隐藏的表单参数的所有剩余表单;以及,如果在剩余表单组中仍然有一个以上的剩余表单,则以预定的方式从所述剩余表单组中选择一个最佳适配的表单,否则,就选择所述剩余表单组中所述剩余的一个表单作为最佳适配的表单;
(c)如果所述保存的请求不是表单请求,则在始发网页上选择一个最佳适配的URL作为目标URL;
(d)对所述目标URL发出重放请求;以及
(e)重复步骤(a)到(d),直到请求历史记录中的每个保存的请求都被重放为止。
10.一种用于创建通过一组网页的路径并重放所述路径的一部分的方法,包括:
保存路径,其中保存路径的步骤还包括:
接收对于始发网页的第一用户请求;
在中间服务器的请求历史记录中保存所述第一用户请求;
把所述第一用户请求发送到目标网服务器;
接收来自目标网服务器的始发网页;
调整所述始发网页,使其指向中间服务器;
把始发网页发送给用户;
接收对于目标网页的附加用户请求,其中所述附加的用户请求基于始发网页的被调整的内容;以及
在请求历史记录中记录所述附加用户请求;以及
重放路径,其中重放路径的步骤包括:
从请求历史记录中选择一个保存的请求;
如果所述保存的请求相应于一个起始URL,则选择该起始URL作为目标URL;
如果所述保存的请求是表单请求,则从始发网页当前配置中的一组表单中选择一个最佳适配的表单作为目标URL,其中选择一个最佳适配的表单的步骤包括:如果一个潜在表单的URL不以所述保存的URL开始,则拒绝所述潜在表单;如果表单请求是POST,如果一组剩余表单中的某个剩余表单不要求如果对该剩余表单作出重放请求就应当被包括在重放表单参数中的每个参数,则拒绝该剩余表单;如果所述剩余表单组仍然含有一个以上的剩余表单,拒绝该组剩余表单中不要求所述保存表单参数组中的所有隐藏的表单参数的所有剩余表单;以及,如果在剩余表单组中仍然有一个以上的剩余表单,则以预定的方式从所述剩余表单组中选择一个最佳适配的表单,否则,就选择所述剩余表单组中所述剩余的一个表单作为最佳适配的表单;
如果所述保存的请求不是表单请求,则从始发网页的当前配置中选择一个最佳适配的URL作为目标URL;以及
对所述目标URL发出重放请求。
CNB008168571A 1999-11-12 2000-11-10 用于重放预先确定的通过互联网的路径的方法 Expired - Lifetime CN100336031C (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US16510299P 1999-11-12 1999-11-12
US16510399P 1999-11-12 1999-11-12
US60/165,103 1999-11-12
US60/165,102 1999-11-12

Publications (2)

Publication Number Publication Date
CN1589434A CN1589434A (zh) 2005-03-02
CN100336031C true CN100336031C (zh) 2007-09-05

Family

ID=26861109

Family Applications (2)

Application Number Title Priority Date Filing Date
CNB008168571A Expired - Lifetime CN100336031C (zh) 1999-11-12 2000-11-10 用于重放预先确定的通过互联网的路径的方法
CNB008168172A Expired - Lifetime CN1249608C (zh) 1999-11-12 2000-11-13 用于对网页进行中介处理的系统和方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
CNB008168172A Expired - Lifetime CN1249608C (zh) 1999-11-12 2000-11-13 用于对网页进行中介处理的系统和方法

Country Status (9)

Country Link
EP (2) EP1337920B9 (zh)
JP (3) JP4729218B2 (zh)
KR (2) KR20030040192A (zh)
CN (2) CN100336031C (zh)
AU (2) AU1479101A (zh)
CA (2) CA2391426A1 (zh)
ES (1) ES2536318T3 (zh)
HK (1) HK1054103B (zh)
WO (2) WO2001035222A2 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6954783B1 (en) 1999-11-12 2005-10-11 Bmc Software, Inc. System and method of mediating a web page
AU2002320311A1 (en) * 2001-07-06 2003-01-21 Clickfox, Llc Use of various methods to reconstruct experiences of web site visitors
US7624176B2 (en) * 2004-10-14 2009-11-24 International Business Machines Corporation Method and system for programmatically generating synthetic transactions to monitor performance and availability of a web application
CN100392649C (zh) * 2004-12-31 2008-06-04 北京联动在线通讯科技有限公司 对屏幕显示的特定匹配词语实现快速链接的方法
WO2006128178A2 (en) * 2005-05-27 2006-11-30 Nexquest, Llc Integrated method and system for accessing and aggregating disparate remote server services
WO2007088334A1 (en) 2006-01-31 2007-08-09 Speed-Trap.Com Limited Website monitoring and cookie setting
GB0601939D0 (en) 2006-01-31 2006-03-15 Speed Trap Com Ltd Website monitoring and cookie setting
US7991891B2 (en) 2006-02-02 2011-08-02 Microsoft Corporation Version-specific content searching
JP4849929B2 (ja) 2006-03-28 2012-01-11 富士通株式会社 シナリオ作成プログラム
JP4805199B2 (ja) * 2007-03-20 2011-11-02 富士通株式会社 シナリオ作成プログラム及びシナリオ作成装置
US8200752B2 (en) * 2009-12-23 2012-06-12 Citrix Systems, Inc. Systems and methods for policy based transparent client IP insertion
CN104360942A (zh) * 2014-11-07 2015-02-18 电信科学技术第十研究所 一种表单测试的计算机实现的方法、计算机及系统
EP3247084B1 (en) 2016-05-17 2019-02-27 Nolve Developments S.L. Server and method for providing secure access to web-based services
CN109656475A (zh) * 2018-12-03 2019-04-19 郑州云海信息技术有限公司 一种自动关闭cache的方法、装置、终端及存储介质

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2661562B2 (ja) * 1994-10-11 1997-10-08 日本電気株式会社 プログラム評価装置
US5752022A (en) * 1995-08-07 1998-05-12 International Business Machines Corp. Method for creating a hypertext language for a distributed computer network
JPH0962704A (ja) * 1995-08-30 1997-03-07 Hitachi Ltd リンク構造情報のノード動作設定方法
GB9603582D0 (en) * 1996-02-20 1996-04-17 Hewlett Packard Co Method of accessing service resource items that are for use in a telecommunications system
US5974572A (en) * 1996-10-15 1999-10-26 Mercury Interactive Corporation Software system and methods for generating a load test using a server access log
JP3646471B2 (ja) * 1997-05-14 2005-05-11 日本電信電話株式会社 情報提供方法及び個人適応情報提供サーバ及び情報提供プログラムを格納した記憶媒体
JPH1139205A (ja) * 1997-07-18 1999-02-12 Hitachi Ltd ハイパーテキストの処理システム
JPH11175446A (ja) * 1997-12-10 1999-07-02 Fuji Xerox Co Ltd データ中継装置、要求中継装置、データ通信システム、データ中継プログラムを記録したコンピュータ読み取り可能な記録媒体及び要求中継プログラムを記録したコンピュータ読み取り可能な記録媒体
JPH11175442A (ja) * 1997-12-11 1999-07-02 Fuji Xerox Co Ltd データ中継装置、情報端末装置、データ中継プログラムを記録したコンピュータ読み取り可能な記録媒体及び情報閲覧プログラムを記録したコンピュータ読み取り可能な記録媒体
JPH11203226A (ja) * 1998-01-09 1999-07-30 Sharp Corp ハイパーテキスト保存装置及びハイパーテキスト保存装置制御プログラムを記憶した媒体
US6185598B1 (en) * 1998-02-10 2001-02-06 Digital Island, Inc. Optimized network resource location
JPH11265344A (ja) * 1998-03-17 1999-09-28 Digital Vision Laboratories:Kk コンピュータ・ネットワークを利用したサービス提供システム
US6278966B1 (en) * 1998-06-18 2001-08-21 International Business Machines Corporation Method and system for emulating web site traffic to identify web site usage patterns
US6138157A (en) 1998-10-12 2000-10-24 Freshwater Software, Inc. Method and apparatus for testing web sites
US6954783B1 (en) 1999-11-12 2005-10-11 Bmc Software, Inc. System and method of mediating a web page

Also Published As

Publication number Publication date
CN1433549A (zh) 2003-07-30
JP5010747B2 (ja) 2012-08-29
JP2004500629A (ja) 2004-01-08
EP1390870A2 (en) 2004-02-25
JP2003530625A (ja) 2003-10-14
EP1337920A2 (en) 2003-08-27
AU1479101A (en) 2001-06-06
WO2001035222A2 (en) 2001-05-17
KR20020075369A (ko) 2002-10-04
WO2001035259A2 (en) 2001-05-17
CA2391417A1 (en) 2001-05-17
WO2001035222A3 (en) 2003-06-05
CA2391426A1 (en) 2001-05-17
HK1054103A1 (zh) 2003-11-14
CN1249608C (zh) 2006-04-05
JP2011118938A (ja) 2011-06-16
EP1337920B9 (en) 2015-05-27
CN1589434A (zh) 2005-03-02
KR20030040192A (ko) 2003-05-22
ES2536318T3 (es) 2015-05-22
KR100748770B1 (ko) 2007-08-13
JP4729218B2 (ja) 2011-07-20
JP5010081B2 (ja) 2012-08-29
AU1761801A (en) 2001-06-06
EP1337920B1 (en) 2015-02-25
HK1054103B (zh) 2015-07-31
WO2001035259A3 (en) 2003-12-11

Similar Documents

Publication Publication Date Title
CN100399290C (zh) 收集高速缓存Web内容的多样化Web服务器活动数据
CN100336031C (zh) 用于重放预先确定的通过互联网的路径的方法
CN104685490B (zh) 结构化和非结构化数据自适应分组的系统和方法
US20080126931A1 (en) System and method for recording and reproducing user operation
US7158988B1 (en) Reusable online survey engine
KR100532621B1 (ko) 온라인 광고효과 분석 시스템 및 방법
US20020078165A1 (en) System and method for prefetching portions of a web page based on learned preferences
EP2500834A1 (en) Method and System for Transferring Application Program Settings Between Applications
US20030070143A1 (en) Method for extracting digests, reformatting, and automatic monitoring of structured online documents based on visual programming of document tree navigation and transformation
US20140026082A1 (en) Method and system for predictive browsing
US8306805B2 (en) Scenario generation method and scenario generation apparatus
CN1225479A (zh) 基于请求者类型的网页的定制
CN103827778A (zh) 企业工具增强
US20060150111A1 (en) Methods and apparatus for evaluating aspects of a web page
Ma et al. Web error classification and analysis for reliability improvement
Worwa et al. Quality of Web-based information systems
US7287036B2 (en) Method and apparatus for automatically searching hypertext structure
AU779907B2 (en) Method for extracting digests, reformatting and automatic monitoring of structured online documents based on visual programming of document tree navigation and transformation
CN101383838B (zh) 一种Web界面在线评估的方法、系统和装置
JP2004110123A (ja) ハイパーテキスト解析方法、解析プログラム及びその装置
US11909807B2 (en) Local recording for demonstration of web-based software applications
US7222296B2 (en) Configurable display of web site content
KR100422934B1 (ko) 주식관련정보의 제공방법
Janne Web Design and CSS Animation
CN115514811A (zh) 一种基于模拟浏览器的服务端代理访问方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CX01 Expiry of patent term

Granted publication date: 20070905

CX01 Expiry of patent term