Charles抓web http、https请求,抓Android http、https请求

 

为什么要抓包?

抓包:能帮助我们定位问题,是后端接口出现的问题,还是前段有问题

Windows下http请求

怎么拦截请求?

选中要拦截的请求,鼠标右键,点击breakpoints,设置断点,即可拦截请求

下次再请求这个http路径时,就自动跳出下面内容

怎么修改请求

修改request请求

在上面的弹出框出现之后,点击Edit Request,可以修改里面的内容,如请求方式,请求地址,修改完成后,点击 最下边的Execute

修改response请求

在上方跳出request请求之后,点击Execute后,就会跳出response请求,如下图,点击Edit Response,下的html,里面会出现HTML内容,可以随意改动里面的内容,点击Execute

页面返回数据如下图

charles抓取windows https请求

step1、需要在电脑上安装证书

 

 

 

 

 step2、保存证书到桌面,以备后续在浏览器中安装证书,一定要是.cer格式的

step3、在chrome浏览器中安装证书

打开chrome浏览器,选择设置---->高级--->管理证书--->

以上:证书导入成功,在charles里面验证一下即可,现在就可以抓到https请求了,如下图

注意:有些加密的https请求,还是请求不到的,怎么请求到后续再请教别人吧,如下图

注意:在安装证书的过程中我遇到了一个坑,那就是先在IE浏览器里安装了证书,但是去chrome里面发请求,发现还是抓不到https请求,我因为我按错了呢,后来经过我多次安装,发现了一个大问题,那就是,你在哪个浏览器安装的证书,那就用哪个浏览器去发请求,否则就是抓不到https请求的。例如:经常用chrome,那就在chrome上安装证书,不在chrome上安装,反而在别的浏览器安装,那么用chrome请求是抓不到https请求的。

抓取Android手机上的http请求

前提:包保证电脑与手机是在一个局域网内,我的理解就是连的是同一个无线网,比如都连的家里的网,或者都连得公司的网

step1、配置charles

step2、获取电脑端的IP,记住IP

首先获取到电脑的IP,控制台输入IPconfig

step3、设置Android手机的代理设置

 找到和电脑同一局域网的无线,操作如下图

设置代理服务器主机名,即刚才获取到的IP;代理服务器端口即第一步在charles里面设置的端口好

以上,设置完毕,即可在charles里面抓到Android手机里面的http请求,如下图

 

charles抓取Android手机的https请求

和web端的一样,也需要安装证书,由于本人是锤子手机,一直安装不了证书,所以还是参考下面的连接吧

https://blog.csdn.net/m840449234/article/details/54016607

怎么模拟弱网测试

打开charlse---Proxy---Throllte Settings

勾选上Enable Throttling,可以选择一些操作对应的网速

如果只想对某地址的请求进行弱网测试,☑️[Only for selected hosts]

进行这项设置后,我们会看到小红旗处于工作状态。

 

然后,打开Sequence查看每个请求的执行情况,比如:

 怎么做url映射

Map remote

map remote 就是把一个地址的请求转发到另一个地址上

添加 map remote

设置 map remote

验证:此时访问nnzhp.cn,访问的就不是之前的内容了,实际是cc-na.cn里面的内容了,但是地址是不变的,只是内容变了,证明url映射起作用了

Map Local

返回指定的文件内容

配置要访问的地址与返回的文件

返回内容

 

posted @ 2018-11-13 11:16  会飞的狗子  阅读(176)  评论(0编辑  收藏  举报