3

トラフィックの傍受に 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

この

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

response body

現在、リクエストとレスポンスのさまざまな部分とビットを結合してこれを試していますが、エラーが発生しやすくなっています。これを行うより良い方法はありますか?

また、mitm は Gzip でエンコードされた応答本文を処理しますか?

4

2 に答える 2

6

誰かがこれにぶつかった場合。上記の答えは、mitmproxy 4 では機能しません。代わりに、これを使用できます。

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

def response(flow):
    print(assemble_request(flow.request).decode('utf-8'))
于 2019-04-29T00:01:37.630 に答える