写本文章目的:记录使用Charles抓包然后修改发出去的请求参数和服务器返回值

一、抓包可以帮我们做什么:

1、Charles抓包可以帮我们看发出去的请求

2、定位问题:看是server端的问题还是客户端的问题

3、可进行弱网测试(http协议)

如要测一个功能,无法确定是前端还是后端的问题时,通过抓包工具Charles就可以看出来了;

二、浏览器抓包修改请求和服务器返回(http请求为例,一般https是抓不到包的,不限制浏览器种类,IE、谷歌等都可以)

 1、打开Charles

 1)、打开浏览器输入要抓包的网址进行访问,如我们这里访问北京58同城(bj.58.com),访问成功后看Charles

charles ios手机抓包抓不到 charles苹果抓包_charles ios手机抓包抓不到

2)、找到我们访问的请求,点击请求前面的小“+”,展开,点击<default>,就可以查看request和response的相关信息

charles ios手机抓包抓不到 charles苹果抓包_charles ios手机抓包抓不到_02

charles ios手机抓包抓不到 charles苹果抓包_抓包_03

3)、我们如果要修改该请求的发出的数据,那么我们先要给该请求打断点,选择对应的请求右键,选择Breakpoints,选择如下图

charles ios手机抓包抓不到 charles苹果抓包_抓包_04

4)、打开浏览器,再次访问58同城后,Charles中出现以下内容,同时浏览器中58同城页面在转圈

charles ios手机抓包抓不到 charles苹果抓包_charles ios手机抓包抓不到_05

charles ios手机抓包抓不到 charles苹果抓包_数据_06

5)、Charles中修改请求数据,发出数据可以进行随便修改-修改后点击Execute执行,则发出的请求被修改:

charles ios手机抓包抓不到 charles苹果抓包_58同城_07

6)、修改response数据:如将response数据的58公众号改为68公众号,点击Excute,再次访问页面时返回数据被修改;

 

charles ios手机抓包抓不到 charles苹果抓包_数据_08

charles ios手机抓包抓不到 charles苹果抓包_抓包_09

7)、弱网测试

弱网设置

charles ios手机抓包抓不到 charles苹果抓包_数据_10

charles ios手机抓包抓不到 charles苹果抓包_抓包_11

 

三、手机端抓包

1、必须保证手机和电脑在同一个局域网内

2、获取到电脑的ip地址,Charles默认的端口号是8888,如果修改了端口号,可通过Charles的Proxy-Proxy settings进行查看和修改

charles ios手机抓包抓不到 charles苹果抓包_charles ios手机抓包抓不到_12

3、手机端在WLAN中设置代理:配置代理-手动设置ip和端口号保存,这样手机端的请求在Charles中就可以抓到了;

 

四、如果我们只想抓某一个请求的包,那可以通过设置过滤来控制

sequence中设置要抓包的地址即可

charles ios手机抓包抓不到 charles苹果抓包_58同城_13