一. Charles
-
前置条件
-
断开vpn
-
浏览器停用其它代理插件,如 SwitchyOmega
-
在菜单栏选择 『Help -> SSL Proxying -> Install Charles Root Certificate』,会自动导入 Charles Proxy CA 证书并打开 Keychain Access,双击新导入的证书弹出证书信息页面,将 加密套接字协议层(SSL) 设置为 始终信任,关闭页面后弹出密码提示,输入密码更新系统信任设置
-
设置要代理的 https 域名:
-
Charles 开启 macOS Proxy
-
Map Remote
常用场景:本地开发时域名为 localhost:8000,请求 www.baidu.com 域名下的某个资源,该资源有跨域限制,只接受来自 www.baidu.com 的请求,而 localhost:8000 的请求都会被阻拦。
如下设置,我们就可以把本地域名换成 www.baidu.com 了,我们本地开发涉及到的 lift 和 js 路径会打到 localhost:8000,其它路径将都打到 www.baidu.com
注:https 重定向的时候只有设置成上图那样才可以
-
Charles 抓不到 localhost
可以修改 hosts 文件将一个域名映射到本地:
127.0.0.1 www.baidu.com
然后就可以抓到了
二. 参考文档
zhuanlan.zhihu.com/p/26182135 (Mac上使用Charles抓包)
juejin.im/post/5c0a6b… (前端配置本地代理方法总结)