一种修改http响应数据的方法及装置的制造方法_2

文档序号:9921864阅读:来源:国知局
步骤SlOl操作的HTTP请求可优选为经浏览器端首次发出的HTTP请求,但并不限定该HTTP请求必须为浏览器端首次发出的请求。所述HTTP请求也可以是之前没有进行过HTTP响应数据修改,经浏览器重复发送的HTTP请求;或者是已进行过HTTP响应数据修改但又经浏览器发送并再次要进行响应规则设置的请求。因此所述进行响应规则设置的HTTP请求也可理解为:由浏览器端发出的并被HTTP协议代理调试工具捕获的HTTP请求。此外,还可以理解的是,经过步骤S101设置的响应规则将默认保存在响应规则列表中。
[0028]步骤S102、在监测到浏览器端再次发出所述HTTP请求后,匹配所述响应规则,并基于所述响应规则修改所述HTTP请求对应的HTTP响应数据。
[0029]在本实施例中,经过步骤SlOl仅实现了所述HTTP请求所对应响应规则的设置,真正的对HTTP请求所对应HTTP响应数据的修改需要基于步骤S102实现。在步骤S102中,对HTTP响应数据进行修改的限定条件是在对所述HTTP请求进行响应规则设置后,还需要捕获到浏览器端再次发送所述HTTP请求。即,只有监测到浏览器端再次发出所述HTTP请求后,才会对响应规则列表中的响应规则进行匹配,以获取该HTTP请求对应的响应规则,并基于该响应规则完成HTTP响应数据的修改。其中,所述对响应规则列表中的响应规则进行匹配,可理解为将当前捕获的HTTP请求中包含的URL和请求方法参数信息与响应规则列表中的各响应规则进行匹配,若上述两条数据信息均满足匹配条件,则说明响应规则存在于所述响应规则列表中。相应的,所述对HTTP响应数据的修改操作可简单描述为:首先拦截服务器端将要发送给浏览器端的HTTP响应包;然后在响应规则列表中查找和获取以HTTP请求相匹配的响应规则;之后将所述HTTP响应包中原有的响应数据替换成上述获取的响应规则中包含的数据,由此实现HTTP响应数据的修改。
[0030]本发明实施例一提供的一种修改HTTP响应数据的方法,无需进行HTTP请求所对应会话数据的本地保存和对本地保存数据文件的查找及其基于所查找的数据文件进行响应规则的设定,能够在监听到对会话列表中的HTTP请求进行拖动操作后,直接获取该HTTP请求的会话数据,并基于上述会话数据就能实现HTTP请求响应规则的设置;并且能够在监测到浏览器端再次发送上述HTTP请求后,直接基于上述设置的响应规则对HTTP请求的当前HTTP响应数据进行修改。本发明所提的方法很大程度简化了基于HTTP协议代理调试工具对HTTP响应数据进行修改操作流程,从而节省了研发人员的研发时间,提升了HTTP协议代理调试工具的用户体验。
[0031]实施例二
[0032]图2为本发明实施例二提供的一种修改HTTP响应数据的方法的流程示意图。本发明实施例二以上述实施例为基础进行优化,在本实施例中,将步骤“获取所述HTTP请求的会话数据,并基于所述会话数据设置所述HTTP请求对应的响应规则”进一步优化为:获取所述HTTP请求的会话数据,同时弹出所述响应规则的设置表单,所述设置表单包括4个可编辑文本框,分别为别名、URL、HTTP请求方法参数以及响应体;将所述会话数据中包括的URL、HTTP请求方法参数、以及所述HTTP请求的响应数据对应填充至所述设置表单的可编辑文本框;在接收到用户对所述设置表单的可编辑文本框的修改编辑并确认后,保存所述设置表单,完成所述响应规则设置。
[0033]此外,本发明实施二还将步骤“在监测到浏览器端再次发出所述HTTP请求后,匹配所述响应规则,并基于所述响应规则修改所述HTTP请求对应的HTTP响应数据”进一步优化为:在捕获到浏览器端再次发出所述HTTP请求后,以及服务器端发送HTTP响应包至所述浏览器端前,拦截所述HTTP响应包;读取包含至少一个响应规则的响应规则列表,并在所述响应规则列表中查找和获取与所述HTTP请求相匹配的响应规则;在获取到所述响应规则后,对所述HTTP请求的请求头进行修改,以禁用所述HTTP请求的缓存;并基于所述响应规则,修改所述HTTP响应包中的响应数据。
[0034]如图2所示,本发明实施例二提供的一种修改HTTP响应数据的方法,具体包括如下操作:
[0035]步骤S201、在监听到对会话列表中的HTTP请求进行拖动操作后,获取所述HTTP请求的会话数据,同时弹出所述响应规则的设置表单。
[0036]在本实施例中,当监听到对会话列表中的HTTP请求进行拖动操作后,获取所述HTTP请求的会话数据的同时,会弹出该HTTP请求所对应响应规则的设置表单。其中,所述会话列表中的HTTP请求优选为浏览器端发出的HTTP请求,所述设置表单具体可理解为用于设置所述响应规则的可编辑表单。相应的,所述设置表单具体可包括4个可编辑文本框,分别为别名、URL、HTTP请求方法参数以及响应体。
[0037]步骤S202、将所述会话数据中包括的URL、HTTP请求方法参数、以及所述HTTP请求的响应数据对应填充至所述设置表单的可编辑文本框。
[0038]在本实施例中,会将获取到的所述会话数据中包括的URL、HTTP请求方法参数、以及该HTTP请求的响应数据对应填充至所述设置表单可编辑本文框。需要说明的是,所述获取所述HTTP请求的会话数据、弹出该HTTP请求所对应响应规则的设置表单、以及将会话数据对应填充至所述设置表单可编辑本文框,这些操作几乎是同时进行的。即,在监听到对会话列表中的HTTP请求进行拖动操作后,执行上述三步操作所花费的时间不超过I秒,与现有的修改HTTP响应数据的方法相比,无需用户手动操作,很大程度简化了对响应规则的设置操作,进而节省了用户修改HTTP响应数据的操作时间。
[0039]进一步地,所述将所述会话数据中包括的URL、HTTP请求方法参数、以及所述HTTP请求的响应数据对应填充至所述设置表单的可编辑文本框,具体包括:
[0040]将所述会话数据中包括的URL、HTTP请求方法参数、以及所述HTTP请求的响应数据分别填充至所述设置表单的名为URL、HTTP请求方法参数以及响应体的可编辑文本框中;通过正则匹配提取所述会话数据的URL中包含的文件名,并将所述文件名填充至所述设置表单的名为别名的可编辑文本框中。
[0041]在本实施例中,所述会话数据中的URL内容具体可理解为网络通信所需的协议名(如HTTP协议)、服务器名(或IP地址)、访问路径和文件名,示例性的,所述URL可表示为:协议://服务器名/路径?文件名,如http: //baidu.com/msg/msg_dataGetmsgCount?;所述会话数据中HTTP请求方法参数内容具体可理解为HTTP请求方法对应的参数值,如GET参数、POST参数、以及PUT(增加)参数等,本实施例将所述请求方法参数优选为POST参数;所述会话数据中HTTP响应数据具体可理解为捕获到的浏览器端首次发送HTTP请求后,由服务器端返回的HTTP响应数据。基于上述操作步骤,可实现会话数据到设置表单的对应的填充。
[0042]此外,对于设置表单中名为别名的可编辑文本框,对其内容的填充可通过正则匹配会话数据中的URL实现。所述正则匹配具体可理解为基于正则表达式匹配URL。示例性的,所述正则表达式可设置为包含、和“?”的式子,具体的,可将URL以号分为两部分字符串,将第一部分字符串记为a;将字符串a以号分为N部分字符串(N为大于I的整数),并记最后一部分字符串为b;最后将字符串b以“?”号分为两部分,取第一部分,所述第一部分就是URL中的文件名部分。在通过正则匹配获取URL的文件名后,就可将所述文件名填充至设置表单的名为别名的可编辑文本框中。
[0043]步骤S203、在接收到用户对所述设置表单的可编辑文本框的修改编辑并确认后,保存所述设置表单,完成所述响应规则设置。
[0044]—般地,用户可对填充之后的设置表单的可编辑文本框进行修改编辑,最终,用户可以将所述设置表单修改编辑为所需的内容,并可点击所述设置表单的确认键,以实现对修改编辑后的设置表单的保存。需要注意的是,用户可以对所述设置表单中的任意可编辑文本框进行修改编辑,但所述名为URL的文本框内容不能为空。
[0045]在本实施例中,在接收到用户对所述设置表单的可编辑文本框的修改编辑并确认后,可以保存所述设置表单,具体的,所述设置表单的保存路径可由用户自行设定,也可由系统默认保存在本地的可扩展标记语言(Extensible Markup Language,XML)文件中。由此完成HTTP请求所对应响应规则的设置。
[0046]步骤S204、在捕获到浏览器端再次发出所述HTTP请求后,以及服务器端发送HTTP响应包至所述浏览器端前,拦截所述HTTP响应包。
[0047]在本实施例中,在基于HTTP协议代理调试工具捕获到浏览器端再次发出上述设置的HTTP
当前第2页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1