原因
微信或者钉钉在开发h5应用时,都需要调用各自的js-sdk,所有在电脑浏览器调试的是会没有相应的环境而不能使用,所以只能在手机应用上面调试。第一种方法是应用对应的后台配置本地内网ip,但是只能一个人调试。第二种方法是后台配置域名,通过手机代理到自己本地代码,每个人都是调试自己本地代码即可
第二种方法-手机代理到自己本地
微信、钉钉后台配置的域名比如xxx.domain.com
,在本地访问xxx.domain.com
时解析到本地127.0.0.1
host修改
host修改:hosts的简介和修改方法 - 掘金 (juejin.cn)
127.0.0.1 xxx.domain.com
win系统修改后立即生效
win10-显示所有 dns内容
ipconfig /displaydns
win10-刷新所有 dns内容
ipconfig /flushdns
Charles
-
安装 电脑端安装Charles
-
电脑端安装SSL证书 选择 “Help” -> “SSL Proxying” -> “Install Charles Root Certificate”
-
手机端安装SSL证书 选择 “Help” -> “SSL Proxying” -> “Install Charles Root Certificate on a Mobile Device or remote Browser”
将手机网络wifi添加代理 设置为:192.168.1.74,端口8888,设置成功电脑端会弹出授权提示,点击同意,
手机浏览器打开chls.pro/ssl
下载证书,有的手机可以点击文件直接安装,有的需要到设置-安全-安装证书里面安装
- SSL Proxying Srtting 这里最常用的设置就是第一个ssl proxying,这里记录了需要捕获哪些ssl的信息;
注意,如果你不在这里设置,虽然你安装了ssl的charles证书,你依然无法正常捕获;
- 修改开发环境端口
由于这里xxx.domain.com
只能是80端口,将开发环境webpack-dev-server
端口也必要改成80才可以
- 配置完成
手机打开微信或钉钉h5应用-就会代理到本地的开发环境
第三种方法:
whistle
用法类似上面的Charles
工具,但是功能更强大,可以把移动端的log日志代理到whistle上,更多的功能需要查看下面文档:
whistle地址