无论时windows上的Fiddler、还是Mac上的Charles都可谓是抓包神奇,我们通常用它来抓取手机、网页甚至是模拟器的请求。但是在前端开发中,还有一种很普遍的场景,那就是node命令行的请求。在做node开发中,我们除了用侵入代码的方式来代理网络请求,我们更希望的是使用Charles这样的抓包工具来处理,今天的小技巧就是node终端的请求使用Charles进行抓包。
具体操作步骤如下:
打开Charles
终端上执行:
1
2
3export http_proxy=http://proxyAddress:port
或
export https_proxy=https://proxyAddress:portproxyAddress: 本地IP 通常127.0.0.1就可以了
port:Charles代理端口 通常为 8888 ,具体可以前往Charles Proxy -> Proxy Settings -> HTTP Proxy 里面设置并开启node启动项目
访问node项目:
第一次访问时,Charles会有一个提示框,允许就好了Charles正常抓包
注意:
~export http_proxy
设置的时候需要加上协议,如果忽略掉http 很有可能导致node终端无法正常发出网络请求。
~取消终端代理命令:1
2
3unset http_proxy
或者
unset https_proxy
window下使用set命令。
~通过export http_proxy
把终端代理端口设置为shadowsocks的代理端口就可以实现终端翻墙,这时候npm安装模块时应该会快一点点。
~可以把 export http_proxy
加入到.bash_profile
永久设置代理。