Charles 使用(app http抓包,request拦截,response拦截)

1、Charles 概述

关于抓包工具:先后琢磨过 wireshark,fiddler,burp suite,charles 。
不得不说在http request拦截与responce数据模拟上charles真的是比较简洁好用。

  • 界面也是简洁大方
  • 拦截篡改请求方便
  • 模拟responce更方便(太赞)

破解版本下载:

  • win版,链接: https://pan.baidu.com/s/1mi0TgH6 密码: v6fu
  • mac版,链接: https://pan.baidu.com/s/1cF0F86 密码: 45jy

2、配置

  • Charles 端配置: Proxy -> Proxy Setting -> 常见的设置8888或者8080
    Charles 使用(app http抓包,request拦截,response拦截)_第1张图片

  • 手机端就是普通的连接代理配置:wifi -> 代理 -> 手动 -> 填写主机名(上图ip),端口号(上图端口号)

  • 然后手机发起请求,要选择同意(allow) (如果没有弹出此界面,一般无法抓包,请确认防火墙关闭,并重启charles)
    Charles 使用(app http抓包,request拦截,response拦截)_第2张图片

3、charles 数据包展示

比较简洁的tab 左边有域名归类:
Charles 使用(app http抓包,request拦截,response拦截)_第3张图片

右边是单个请求:
Charles 使用(app http抓包,request拦截,response拦截)_第4张图片

4、请求过滤

太多的请求总是凌乱:
Proxy -> Recording Settings 以手机酷狗为例子。
Charles 使用(app http抓包,request拦截,response拦截)_第5张图片

5、请求与响应拦截类比

  • fiddler拦截是分请求拦截,响应拦截,设置后,就后续的所以http都拦截了。
    《fidder 拦截http 重新发起请求》篇有操作方法
  • burp suite 拦截 默认是请求拦截(在action里可以设置responce拦截)
    标题 状态 阅读 评论 评论权限 操作
    《Burp Suite http app抓包》篇有操作方法

  • charles 是分接口拦截(断点),对该接口设置了拦截,后续发生连接时请求拦截一次,响应发生一次。拦截时可修改数据。

6、charles http 拦截(Breakpoints)

在Sequence 这拦,选择要拦截的接口,右击 -> Breakpoints 以后的请求和响应分别拦截一次跳到改数据内容页面。
按钮说明:

  • cancel 跳过不改
  • abort 丢弃
  • excute 执行(修改后点击)

6、save

在Sequence 这拦,选择要拦截的接口,右击 ->
- save Request 请求内容保存
- save Responce 响应内容保存

7、map (非常好用的功能,mock 效果)

在Sequence 这拦,选择要拦截的接口,右击 ->
- map remote 该请求结果使用另一个请求的结果
- map local 该请求的结果使用本地文件
这是一个非常好用的功能,有mock 模拟数据的用处。比如说服务端不方便给各种数据,可以在这里客户端自己构造数据测效果。

8、FAQ

8.1、 中文乱码

edit -> preferences -> 选择一个中文字体就可以了

Charles 使用(app http抓包,request拦截,response拦截)_第6张图片

你可能感兴趣的:(工具抓包篇)