zoukankan      html  css  js  c++  java
  • Mac上的抓包工具Charles【多测师】

    在工作当中Mac操作系统经常用到Charles抓包来修改数据和断点(可以用抓包工具来抓取接口,看接口返回的字段和值,分析后端的处理逻辑)
    Fidder使用C#开发的,所以就不能在Mac上使用了,Charles是Java开发的,所以跨平台,可以在Mac上使用,也可以在Linux以及Window下都是可以使用的,需要安装JDK才能运行,
    有30天的试用期,也可以下载一个破解的Charles.jar包代替contens-显示包内容-Java目标下的Charles.jar就可以免费的使用了。 ==》多测师_王sir原创
    一、下载
    1.可以在官网http://www.charlesproxy.com/可下载到最新版本。
    下载下来.dmg格式,点击安装打开界面:

    2.可以看到Charles抓取的接口数据包括接口的路径:test2-cfs-ms.pa18.com:10129/cfsmsfront/mapp/request/queryUnsecuredProgressOrders.do
    这里面包含了test2环境,cfs和ms系统,10129端口 和绝对的接口路径。
    contents里面包含了umld,token,isOtherChannel字段的入参,包含键和值;
    下面返回的数据以JSON的格式显示包含了订单的状态,产品名称,客户姓名,申请时间等等。
    当测试环境不稳定的时候可以自己搭建一个mock系统来模拟和代替生产环境,下次有时间来搭建一下,配置用Tomcat+mock就可以了
    可以直接把要用的接口列在项目列表当中填写接口路径和入参用Charles抓取数据然后填入到mock的响应数据当中然后可以通过改变resultcode或者
    其他字段的值来控制接口的返回值进行接口测试,类似于fiddler工具中的修改断点,非常方便,有时间再搭建。
    3.Charles还可以用来上生产环境的配置.具体有时间再整理上传。

    二、破解
    1.不过这个收费的,那么接下来就开始破解吧,其实破解很简单就是替换一个文件就可以了,可以在网上搜:Charles3.9.3破解的jar文件
    破解步骤:打开应用程序,选择Charles,选择显示包内容:
    2.然后点击Contents->Resources->Java:
    3.然后将下载下来的charles.jar替换这里的charles.jar就可以了。然后再次打开Charles,就不会提示30天使用期限了,破解搞定。


    三、抓包
    第一抓包步骤-HTTP抓包:
    1、打开Charles程序
    2、查看Mac电脑的IP地址,系统偏好设置->网络,比如ip地址是:192.168.1.7
    3、打开iOS设置,进入当前wifi连接(Mac在一个局域网内),设置HTTP代理Group,将服务器填为上一步中获得的IP,即192.168.1.7,端口填8888:
    4、iOS设备打开你要抓包的app进行网络操作
    5、Charles弹出确认框,点击Allow按钮即可


    第二、HTTPS抓包
    1.需要下载Charles证书http://www.charlesproxy.com/ssl.zip,解压后导入到iOS设备中,下载好:
    http://pan.baidu.com/s/1sjJiZYt,在iOS设备中使用safari打开这个链接:
        点击打开:    点击安装:
    2.再次点击安装,证书安装成功
    然后在Charles的工具栏上点击Proxy按钮,选择Proxy Settings
    切换到SSL选项卡,选中Enable SSL Proxying,选完进行下一步
    这一步和Fiddler不同,Fiddler安装证书后就可以抓HTTPS网址的包了,Charles比较麻烦,需要在上一步的SSL选项卡的Locations表单填写要抓包的域名和端口,点击Add按钮,在弹出的表单中Host填写域名,比如填api.instagram.com,Port填443
    3.打开网易app:
    4.看到响应的数据了。
  • 相关阅读:
    mysql "ON DUPLICATE KEY UPDATE" 语法
    HTTP协议中PUT和POST使用区别
    layui 表单渲染失败
    golang 一行代码 把array/slice转成逗号分隔的字符串
    关于layui、table数据表格请求异常回调函数
    关于layui表单中按钮自动提交的解决方法
    使用 socket.io 报错 Error during WebSocket handshake: Unexpected response code: 400
    解决MySQL报错:[Err] 1055
    jetbrains 修改 http proxy 更换代理
    layui layuiadmin layui.data 数据操作
  • 原文地址:https://www.cnblogs.com/xiaoshubass/p/7721793.html
Copyright © 2011-2022 走看看