MITM 代理,获取整个请求和响应字符串

2023-12-13

我正在使用 mitmproxy 来拦截流量。我想要的是能够在字符串中获取整个请求和响应。我知道你有def response(context, flow)并且 HTTPFlow 对象具有请求和响应对象。我想要的只是字符串中这样的东西

GET http://www.google-analytics.com/collect?v=1& HTTP/1.1
Header 1: value
Header 2: value

request body

and this

HTTP/1.1 301 Moved Permanently
Header 1: value
Header 2: value

response body

现在我一直在尝试通过连接请求和响应的不同部分和位来实现这一点,但这很容易出错。有一个更好的方法吗?

另外,mitm 是否处理 Gzip 编码的响应主体?


如果有人碰到这个;上面的答案不适用于 mitmproxy 4。相反,可以使用这个:

from mitmproxy.net.http.http1.assemble import assemble_request

def response(flow):
    print(assemble_request(flow.request).decode('utf-8'))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MITM 代理,获取整个请求和响应字符串 的相关文章

随机推荐