实现目标

在Mac 上 对 iOS  真机 和 模拟器 进行 Http/Https抓包

使用工具

Mac 上 Charles 4.2 
安装 参考链接 1. 和 链接 2.

抓包 http 请求

(1) 保证真机 和 Mac  使用 同一个 局域网(wifi),查看Mac IP地址,例如 192.168.x.xx
(2) 选择Proxy | Proxy Settings,弹出proxy设置选项卡,勾选Enabling transparent HTTP proxying
     真机 点击设置 —> 无线局域网—>指定wifi—>设置代理 
     服务器 填写 (1)获取的IP
     端口号 填写 8888 (Charles 默认 http proxy port 为 8888,可以在 charles —> Proxy—>Proxy Settings  修改 http proxy port
 )
(3)真机配置完成,打开Charles  开始抓包前 会弹出 是否允许抓包弹框  点击允许 至此真机抓包正常 可按需求 配置查看 request response 相关数据信息
(4)模拟器抓包 需要把电脑设置为代理:
 
抓包 http 请求 charles —> Proxy—> macOS Proxy 勾选 即可,这样 ,你通过浏览器请求的网址都会出现在这里,iOS模拟器的所有的网络请求也会出现在这里。

抓包 https 请求

charles 也要遵守 https 协议,因此需要下载官网 CA证书
证书下载地址:参考图,位置可能在Help里 多找找菜单栏,主要是在SSL Proxying 里,里面有好多证书,很方便我们以下的各种操作
 
 
(1) Mac 到 参考 3. 下载根证书即CA证书 或者 SSL Proxying 中 Install Charles Root Certificate 即可 非常方便,用钥匙串打开,此时是不被信任的,点击右键,显示简介—>信任选项 第一项—>改为“始终信任”
如图:
  -->

(2)手机安装证书

SSL Proxying 中点击Install Charles Root Certificate On a Mobile or...这项 会弹框,弹框会提示下载地址,

然后复制链接 在手机 Sarfri 浏览器中打开 会提示下载相关操作,按提示处理即可。(网上会有其他下载方式,但是我操作不好使,仍然不能抓包 只有按照Charles提示的下载地址才行)

特殊在 如果是iOS11以上 手机 要打开信任开关,设置-->通用-->关于本机-->证书信任设置--> 指定证书开关开启

其他的都是通过网上其他攻略下的 都不好使。。。所以就跟着Charles提示即可

(3) SSL Proxying Settings  勾选Enable SSL Proxying,在Location部份选择add,按如下图添加,抓取任意站点、443端口的数据

* 代表任意站点,也可以指定站点

(4)同 http 抓包步骤 (1)(2)

至此,当手机重新 发出https请求时候,抓包结果就能不再是 unknown了 能够正常解析了。

模拟器?此时只要 Install Charles Root Certificate in iOS Similaors 即可正常抓包

 
参考:
 
1.https://www.charlesproxy.com/download/ (官网 下载小花瓶)
2. http://charles.iiilab.com (小花瓶 安装攻略)
3.https://www.charlesproxy.com/documentation/additional/legacy-ssl-proxying/(根证书地址)
4.https://segmentfault.com/a/1190000005070614 (配置 参考)

Mac 环境 下使用Charles 抓包Http/Https请求的更多相关文章

  1. 【接口工具】mac环境下使用Charles抓包Https请求

    Charles支持针对Https包解析.具体安装导航请参考“[接口工具]接口抓包工具之Charles” 操作流程 电脑安装证书: Help-SSL Proxying-Install Charles R ...

  2. Charles抓包(http/https请求)

    Charles安装 HTTP抓包 HTTPS抓包 1. Charles安装官网下载安装Charles:https://www.charlesproxy.com/download/当然由于国情可以使用破 ...

  3. 【这特么是个坑。。。】iOS 10.3下解决Charles抓包ssl证书信任问题

    针对近期iOS 10.3以上的系统charles抓https信任问题 前言 最近iPhone系统更新到ios 10.3后,在公司里用Charles抓包竟然出现了一些问题,https的请求都会失败,提示 ...

  4. 记录Mac下使用Charles抓包

    抓包 简述 在网络应用如后端系统,app,小程序等的开发过程中,免不了接口可能会报错,但是一般在app中或者小程序中没有便捷的console控制台,而且线上环境也不会开启调试模式,所以想看一下接口的响 ...

  5. Mac下使用Charles抓包Android

    原文地址:http://fanjiajia.cn/2018/11/21/Mac%E4%B8%8B%E4%BD%BF%E7%94%A8Charles%E6%8A%93%E5%8C%85Android/ ...

  6. Mac下使用Charles抓包https接口

    1 官方网站下载,安装好Charles https://www.charlesproxy.com/download/ 2 安装ssl证书 3 信任证书 4 手机iPhone配置 ,获取证书url 5 ...

  7. Ubuntu 16.04下安装Charles抓包工具

    Charles是一个跨平台的抓包工具,虽然没有Fiddler做的这么完美,但是也算是另一个选择. 下载: https://www.charlesproxy.com/download/ 注册: http ...

  8. Linux环境下使用tcpdump抓包与下载

    (1)报文抓取 tcpdump -i eno5 host 10.8.12.154 -w /test.cap -i:抓取的网卡 host:目的地址 -w:生成的文件存放路径 Ctrl+c 结束抓包,抓取 ...

  9. ROS环境下使用Wireshark抓包(网桥)

    在ROS的管理工具>数据包探测设置里>常规接口选为LAN,数据流>数据流启用>服务器:Wireshark电脑的IP,筛选> IP选要抓包的IP地址 然后在Wireshar ...

随机推荐

  1. centos7系统备份与还原

    1. 前言 在使用Ubuntu之前,相信很多人都有过使用Windows系统的经历.如果你备份过Windows系统,那么你一定记忆犹新:首先需要找到一个备份工具(通常都是私有软件),然后重启电脑进入备份 ...

  2. java过滤四字节和六字节特殊字符

    java7版本中可以这样写: source.replaceAll("[\\ud800\\udc00-\\udbff\\udfff\\ud800-\\udfff]", "* ...

  3. 域名出售(www.shopbao.com)

    www.shopbao.com 前有淘宝,今有商宝. 商宝网站,精彩无限. 因经济原因,忍痛割爱,欲出售该商业域名. 有意者,请联系:18610310405 MAIL: jieisme@163.com

  4. IOS设计模式的六大设计原则之接口隔离原则(ISP,Interface Segregation Principle)

    定义 客户端不应该依赖它不需要的接口: 一个类对另一个类的依赖应该建立在最小的接口上. 定义解读 定义包含三层含义: 一个类对另一个类的依赖应该建立在最小的接口上: 一个接口代表一个角色,不应该将不同 ...

  5. linux IP动态变动之后 , 需要做的杂项操作

    linux的动态ip经常变来变去,目前还没找到固定它不变化的方法.所以每次变动之后都需要做以下的操作,极其麻烦.(必须找到让linux IP 固定的方法) 1.先找到变化之后的动态ip地址 ifcon ...

  6. Gold Balanced Lineup - poj 3274 (hash)

    这题,看到别人的解题报告做出来的,分析: 大概意思就是: 数组sum[i][j]表示从第1到第i头cow属性j的出现次数. 所以题目要求等价为: 求满足 sum[i][0]-sum[j][0]=sum ...

  7. svn删除账户信息

    当我们需要清理eclipse中记录的SVN账号信息时,按如下操作: eclipse中打开window------>preferences------->SVN页面,如下所示: 一般情况下, ...

  8. 使用nginx cache缓存网站数据实践

    Nginx本身就有缓存功能,能够缓存静态对象,比如图片.CSS.JS等内容直接缓存到本地,下次访问相同对象时,直接从缓存即可,无需访问后端静态服务器以及存储存储服务器,可以替代squid功能. 1   ...

  9. CentOS 7.0 防火墙

    CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙.firewall:systemctl start firewalld.service#启动firewalls ...

  10. jqGrid单元格编辑配置,事件及方法

    转自 http://blog.csdn.net/xueshijun666/article/details/18151055 // var ret = $("#in_store_list_de ...