2014-09-30 57 views
1

我試圖在OS X 10.9上覆制使用MITMPROXY的the Map Remote feature in Charles提供的功能。我想要做的是用desiredurl.ca的請求替換對desiredurl.com的任何請求(我願意接受任何答案,告訴我如何使用免費軟件在Charles中複製給定的功能)。如何使用MITMPROXY複製Charles的Map Remote功能

我發現this answerthis question這兩個看起來他們應該幫助,我寫了下面的腳本。

#!/usr/bin/env python 

def redirect_request(context, flow): 
    host = flow.get_url() 

    if 'desiredurl' in host: 
     flow.set_url(host.replace('com','ca')) 
在我的iMac

mitmdump -s path/to/script.py,然後我的iPad連接到我的iMac在8080端口上像往常一樣,和看交通在終端窗口飛過,但訪問desiredurl.com還是帶我去desiredurl.com而比desiredurl.ca要好。因此,我試過如下:

#!/usr/bin/env python 

def response(context, flow): 
    if 'desiredurl' in flow.request.host: 
     flow.request.host.replace('com','ca') 

然而,請求還是去desiredurl.com而非desiredurl.ca。爲什麼是這樣?

回答

0

你確定它應該工作嗎?我的意思是,「主機」標題只是一個HTTP標題。例如,您可以向Google.com發送一個標題設置爲Microsoft.com的請求。應該可能有不同的屬性來改變目標(IP,主機名將被解析爲IP地址)。一般來說,目標與HTTP協議中的主機頭相同,但並非必須如此。