调试无非两种:

  • 本地/开发环境调试,这种调试由于依赖的脚本都在本地,通常比较方便
  • 线上/生产环境调试,该环境下由于所有的脚本请求与后端部署都与本地不同,需要迂回手段来帮助调试

虽然本地调试比较方便,但某一些场景下必须在生产环境调试:

  • 某些环境只能在线上测试,比如微信端需要真实的域名,SSO等
  • 紧急bug修复,只能在线上调试

Charles使用

网页端

浏览器如果使用一些代理插件(如SwitchOmega)需要切换到系统代理,一般我开启Charles代理的时候会把SSR关掉,然后系统网络设置里就会清除一些代理设置:

另外对于https协议请求

  1. 需要安装Charles的证书,在help-> SSL Proxying -> Install Charles Root Certificate,在安装证书窗口选择信任后,Charles才会对https连接的请求进行抓包
  2. 在Proxy-> SSL Proxy Settings中添加对应的域名与端口

开启抓包后,在你需要的资源处右键Map Local即可代理到本地;也可以Map Remote代理到其他地方

更新:

Charles与SwicthOmega的共存配置可以看这篇http://blog.csdn.net/liu251/article/details/52096142

手机端

手机端下载证书并在同一个局域网设置wifi代理后,其他与PC端是相同的