一、拦截请求

mitmproxy的强大功能是拦截请求。拦截的请求将暂停,以便用户可以在将请求发送到服务器之前修改(或丢弃)该请求。mitmproxyset intercept命令配置拦截。i默认情况下,该命令绑定到快捷方式。

通常不希望拦截所有请求,因为它会不断中断您的浏览。因此,mitmproxy希望将流过滤器表达式作为set intercept选择性拦截请求的第一个参数。在下面的教程中,我们使用流过滤~u <regex>器通过匹配请求URL上的正则表达式来过滤流。

欢迎来到mitmproxy教程。在本课程中,我们将介绍请求的拦截。

点击观看视频

二、影片内容

  • 欢迎来到mitmproxy教程。在本课程中,我们将介绍请求的拦截。
  • 我们首先需要配置mitmproxy来拦截请求。
  • 按下i以用预先填充mitmproxy的命令提示符set intercept ''
  • 我们使用流过滤器表达式~u <regex>仅拦截特定的URL。
  • 此外,我们使用过滤器~q仅拦截请求,而不拦截响应。
  • 我们使用&组合两个流量过滤器。
  • ~u /Dunedin & ~qset intercept命令的引号之间输入,然后按ENTER
  • 底部栏显示拦截已配置。
  • 让我们curl在一个单独的终端中使用生成一个请求。
  • 您会在流列表中看到一个新行。
  • 新流程以红色显示,表示已被拦截。
  • 将焦点(>>)放在截获的流上。在我们的示例中已经是这种情况。
  • 按下a可恢复此流程,而无需进行任何更改。
  • 提交另一个请求并关注其流程。
  • 按下X可终止此流程,即丢弃它而不将其转发到最终目的地wttr.in
  • 在下一课中,您将学习修改拦截的流。
  • 在下一课中,您将学习在将截获的流发送到服务器之前对其进行修改。