我正在使用Charles Web调试代理软件来调试HTTP请求。它可以与我的桌面浏览器,Chrome和Firefox很好地配合使用,甚至可以看到其他程序发出的HTTP请求。
当我运行Charles并检查网络配置时,我想我了解它的工作原理-它只是为所有HTTP和HTTPS请求设置代理,然后在端口8888上侦听这些请求:
但是我想不通的产品,我没有看到,我开始在终端,如任何请求wget
,curl
或在elinks
浏览器中。
我知道我可以使用127.0.0.1:8888通过curl和wget指定代理,但是我不明白是否在配置中使用代理设置了网络接口,为什么我需要手动为其指定代理。
另外,我似乎也无法让BlueCrab(网站复印机)出现在Charles中-而且我也没有看到它的代理设置-尽管我相信它使用的是XWindow包装器或其他某种东西(因此它并不是真正的本机)可可/碳应用程序):
我如何在系统上获取所有HTTP请求以通过Charles运行?
澄清度
我的问题是关于为什么当网络接口被设置为使用一个更比问的正确语法卷曲和wget将不使用代理系统的基础curl
,wget
等等。
VPN将创建一个新的网络设备,您可以在ifconfig
命令中看到它,然后将所有系统网络路由到该设备,您可以看到route useroute
命令。
但是HTTP代理(在本例中为Charles)是不同的,它只是打开一个端口,要使用它,您必须指定应用程序设置以将该端口用于HTTP东西。和凯文·里德的回答,curl
,wget
等不读OS X的系统级设置。
如果您的代理是SOCKS(查尔斯同时支持HTTP和SOCKS),则可以将ProxyChains或tsocks用于不支持代理设置的应用程序。
例如:
$ proxychains git clone https://github.com/rofl0r/proxychains-ng
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句