0

example.com にリクエストを送信する Android アプリがあります。example.com/etc/else へのすべてのリクエストが dev.example.com/etc/else に送られるように mitmproxy を設定するにはどうすればよいですか?

私はこれを試しました:

私のスクリプト(rewrite.py):

import mitmproxy
from mitmproxy.models import HTTPResponse
from netlib.http import Headers

def request(context, flow):
    if 'example.com' in flow.request.url :
        flow.request.host = 'dev.example.com'

また、何らかの理由でログ出力が表示されません。たとえば、次のようになります。

from mitmproxy import ctx
 ...
ctx.log.info("This is some informative text.")

私は次のようにmitmproxyを実行しています:

mitmproxy -p 8765 -e -s rewrite.py
4

1 に答える 1

2

したがって、mitmproxy v0.18.2 の場合の解決策は次のとおりです。

import mitmproxy
from mitmproxy.models import HTTPResponse
from netlib.http import Headers
from mitmproxy import ctx

def request( flow):
    if flow.request.pretty_host.endswith('example.com'):
        flow.request.host = 'dev.example.com'
        flow.request.scheme = 'http'
        flow.request.port = 80
        ctx.log.info(" --->" + flow.request.url)
于 2016-12-25T09:36:39.800 に答える