1、HTTPS原理:浏览器
2、抓包服务器
1)抓包的原理工具
Charles自己是一个协议代理工具,若是只是普通的HTTP请求,由于数据自己没通过再次加密,所以做为代理能够知道全部客户端发送到服务端的请求内容以及服务端返回给客户端的数据内容,这也就是抓包工具可以将数据传输内容直接展示出来的缘由。对于HTTPS请求,传输过程的数据都已经通过了加密,代理若是什么都不作的话是没法获取到其中的内容的。为了实现这个过程的数据获取,Charles须要作的事情是对客户端假装服务端,对服务端假装客户端,具体测试
手机抓包加密
一、打开charles,必须保证手机和电脑是在一个局域网里面
二、手机设置代理
服务器写你电脑的ip
端口号呢,默认是8888spa
完成了以上两个步骤就能够抓到http请求的数据了3d
若是要抓取https请求的数据,还须要进行以下设置:代理
3.设置charles ssl代理blog
点击Proxy->SSL Proxy Settings,弹出一个ssl代理设置界面ip
1).Enable SSL Proxying复选框打上勾
2).在里面添加*.443就能够了
右击connect的https 弹出框 ,SSL Proxying:Enabled,这样就能够了
4.手机下载ssl证书
1).Help->SSL Proxying ->Install Charles Root Certificate on a Mobile Device or Remote Browser...
会弹出一个提示框,以下显示:
浏览器输入这个地址便可下载证书,记住要用Android自带的浏览器. 地址是:http://charlesproxy.com/getssl
2).而后按照他的提示安装证书便可.
如何模拟手机弱网进行测试?
1.打开Charles,Proxy->Throttle Setting,设置上传下载速度