实现目标

在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. code::blocks怎么设置命令行参数

    Project->Set Program's Arguments...然后在相应的输入框中输入命令行参数

  2. 各类 HTTP 返回状态代码详解(转)

    FTP状态码 一.HTTP状态码 如果某项请求发送到您的服务器要求显示您网站上的某个网页(例如,用户通过浏览器访问您的网页或 Googlebot 抓取网页时),服务器将会返回 HTTP 状态代码以响应 ...

  3. CS项目总结

    最近做了近一年的CS项目终于接近完工了,有一种脱离苦海,跳出泥潭的感觉.虽然此项目做的很不理想,但它却给了我颇多感受,许多经验教训值得总结. 1.总的技术解决方案大方向上选择的不合适,导致后期对新的需 ...

  4. Redis的README.md

    This README is just a fast *quick start* document. You can find more detailed documentation at http: ...

  5. SecureCRTPortable.exe 如何上传文件

    如果未安装在命令行输入:yum install lrzsz rz     然后上传自己的文件.在解压

  6. 编译包中的 Servlet

    编译包中的类与编译其他的类没有什么大的不同.最简单的方法是让您的 java 文件保留完全限定路径,如上面提到的类,将被保留在 com.myorg 中.您还需要在 CLASSPATH 中添加该目录. 假 ...

  7. Eclipse 编译项目

    Eclipse 编译项目 编译 Java 项目 一个项目可以关联多个编译器. java 项目关联的是 java 编译器.可以通过以下方式来查看项目关联的编译器: 在 Package Explorer ...

  8. python XML基础

    什么是XML XML 指可扩展标记语言(EXtensible Markup Language) XML 是一种标记语言,很类似 HTML XML 的设计宗旨是传输数据,而非显示数据 XML 的标签需要 ...

  9. 012android初级篇之Handler机制

    设计Handler类的目的 Handler类被用来注册到一个线程中,这样可以提供一个简单的通信渠道,用来发送数据到这个线程. 可作为UI线程与后台线程交互的几种方法之一. 具体用途 消息的分发和处理, ...

  10. go反射----4构建

    声明:文章内容取自雨痕老师<Go语言学习笔记> 反射库提供了内置函数make和new的对应操作,其中最有意思的就是MakeFunc.可用它实现通用模板,适应不同数据类型. package ...