如何在 Fiddler 中修改请求?
How to modify a request in Fiddler?
我正在寻找一种简单的方法来拦截 Web 请求并使用 修改请求的内容(主要是 POSTs)提琴手。
这是为了测试server-side验证。
我必须使用 Fiddler,但是我还没有找到一个好的简单方法。
有几种记录的方法可以编写 脚本 来拦截流量并更改 headers,但我想在不编写脚本的情况下这样做 - 这个工具需要由测试人员使用和 writing/modifying 脚本一直被不同的测试人员使用可能很烦人。
示例:
带有 2 个参数的简单 POST:
field1=foo,
field2=bar
我想拦截请求,将field2的值修改成bañ之类的(注意我的ñ,案例是无效,这就是我想要测试的)。
好的,发布我从以下 youtube 视频拼凑而成的答案:
Tampering Client Requests and Server Responses with Fiddler
启动fiddler(我用的是Fiddler 4)
您会注意到它会拦截通过所有浏览器和其他应用程序的所有流量
设置过滤器 - 这将使您能够只查看您感兴趣的数据
- 在右侧,单击过滤器选项卡
- 勾选'Use Filters'
- 在主机上,使用 'Show only the following Hosts'
- 在下面的文本框中,输入您要测试的主机。在我们的测试环境中,输入以下内容:testing.internalsite.com;
- 在名为 'Breakpoints' 的部分中,勾选 'Break request on POST'
拦截请求
- 在您的浏览器中,导航到您正在测试的页面。在我们的例子中,这是我们将进行服务器端验证测试的欢迎页面:https://testing.internalsite.com/yourapp/welcome.do
- 通过点击工具栏中的 'X' 并选择 'Remove all' 来清除所有现有的记录请求。
- 在您的浏览器中,将数据放入您有兴趣测试的表单中,然后点击提交。这是您将使用 fiddler 更改的有效数据(通过客户端验证)。
- 在Fiddler 中,您会看到带有红色图标的请求。右侧点击请求加载详情
- 在检查器选项卡上,然后是 WebForms 选项卡,您可以修改提交的表单的参数。根据测试更改数据。
- 点击 'Run to completion' 按钮
验证您的响应是否正确 - 如果您正在测试服务器端验证,通常会出现某种错误消息
我使用 fiddler 4.6.3。如果您提交的是网络表单,您可以试试这个。
请注意提交表单时的 post 请求。让该请求保留在提琴手中。让我们在 Fiddler 中修改请求。
1 - 右键单击请求 > 选中 "unlock for editing"。
2 - 检查器选项卡 > 在正文部分修改表单字段,例如用户名、密码等。
3 - 右键单击请求 > 重播 > 重新发出请求。
完成!这种方法的唯一问题是您修改了旧请求。在 Charles 代理中,这是通过 2-3 次点击完成的,而在 Fiddler 中则需要多次点击。另外,您不必弄乱旧请求。
我正在寻找一种简单的方法来拦截 Web 请求并使用 修改请求的内容(主要是 POSTs)提琴手。
这是为了测试server-side验证。
我必须使用 Fiddler,但是我还没有找到一个好的简单方法。
有几种记录的方法可以编写 脚本 来拦截流量并更改 headers,但我想在不编写脚本的情况下这样做 - 这个工具需要由测试人员使用和 writing/modifying 脚本一直被不同的测试人员使用可能很烦人。
示例:
带有 2 个参数的简单 POST:
field1=foo,
field2=bar
我想拦截请求,将field2的值修改成bañ之类的(注意我的ñ,案例是无效,这就是我想要测试的)。
好的,发布我从以下 youtube 视频拼凑而成的答案:
Tampering Client Requests and Server Responses with Fiddler
启动fiddler(我用的是Fiddler 4)
您会注意到它会拦截通过所有浏览器和其他应用程序的所有流量
设置过滤器 - 这将使您能够只查看您感兴趣的数据
- 在右侧,单击过滤器选项卡
- 勾选'Use Filters'
- 在主机上,使用 'Show only the following Hosts'
- 在下面的文本框中,输入您要测试的主机。在我们的测试环境中,输入以下内容:testing.internalsite.com;
- 在名为 'Breakpoints' 的部分中,勾选 'Break request on POST'
拦截请求
- 在您的浏览器中,导航到您正在测试的页面。在我们的例子中,这是我们将进行服务器端验证测试的欢迎页面:https://testing.internalsite.com/yourapp/welcome.do
- 通过点击工具栏中的 'X' 并选择 'Remove all' 来清除所有现有的记录请求。
- 在您的浏览器中,将数据放入您有兴趣测试的表单中,然后点击提交。这是您将使用 fiddler 更改的有效数据(通过客户端验证)。
- 在Fiddler 中,您会看到带有红色图标的请求。右侧点击请求加载详情
- 在检查器选项卡上,然后是 WebForms 选项卡,您可以修改提交的表单的参数。根据测试更改数据。
- 点击 'Run to completion' 按钮
验证您的响应是否正确 - 如果您正在测试服务器端验证,通常会出现某种错误消息
我使用 fiddler 4.6.3。如果您提交的是网络表单,您可以试试这个。
请注意提交表单时的 post 请求。让该请求保留在提琴手中。让我们在 Fiddler 中修改请求。
1 - 右键单击请求 > 选中 "unlock for editing"。
2 - 检查器选项卡 > 在正文部分修改表单字段,例如用户名、密码等。
3 - 右键单击请求 > 重播 > 重新发出请求。
完成!这种方法的唯一问题是您修改了旧请求。在 Charles 代理中,这是通过 2-3 次点击完成的,而在 Fiddler 中则需要多次点击。另外,您不必弄乱旧请求。