1、安装charles,点击帮助——ssl代理——在移动设备或远程浏览器上安装charles root证书,看到如下界面:

2、在手机保证和电脑连接同一个wifi的前提下,开启手机代理,输入服务器地址:192.168.5.252,端口号为:8888,有时候新手机连接代理,charles会提示是否允许,点击allow,如果没提示需要在手机端安装证书后设置一下(设置方法:ios : 设置——通用——关于本机——证书信任设置——找到证书——开启信任开关);

3、手机端安装charles证书,浏览器输入:chls.pro/ssl,打开根据提示安装证书,在手机通用——关于本机——证书信任设置——打开后找到刚刚安装的证书,选择打开;

4、电脑端也需要安装证书,在charles软件中点帮助——ssl代理——安装charles root证书,根据提示一步一步安装证书;

6、此时就可以在手机端访问app了,charles会显示每个访问请求的接口。

数据劫持:

方法一:本地映射

手机点击app页面,可以看到charles请求接口,选择charles左侧请求列表中最内层的接口,打开查看返回的数据,已经得到请求的数据,右键——本地映射,打开后已默认填好端口协议主机号,我们把查询(即参数)删除,也可以选择填入需要的参数,参数格式:*参数a=111*,映射到本地路径——选择——选择本地mock.json文件位置,保存。则这时再次请求的时候,可以看到已经直接返回了我们的mock数据。

【映射这里可能会遇到的坑:当改变mock数据之后,再次请求可能返回的不是最新改变的,需要在本地映射中先选择别的映射文件,再选回来原来的文件,则可返回修改之后的mock数据】

方法二:rewrite

配置rewrite重写,适用于直接将线上offer劫持,进行错误复现和调试。

工具——重写——启用重写——添加——起名称——添加重写规则——类型选择正文——往哪里选择响应——

匹配值:比如:“url”

全部替换:"值:

也可以把线上的url放入另一个自定义字段中,进行统一替换,比如替换值:"url:"新url","url_old:"

【注意】

有时候charles都配置好了,但是抓到的接口数据都是unknow,在charles——代理——访问控制设置(Access control settings)——添加0.0.0.0/0,就可以了。

charles代理设置与数据劫持的更多相关文章

  1. charles 代理设置

    本文参考:charles 代理设置 charles的代理身份配置区域 这里应该没啥好说的了, window/MAXCos proxy 是charles的代理启用开关: 如果你选中,则表示电脑使用cha ...

  2. 对数据劫持 OR 数据代理 的研究------------引用

    数据劫持,也叫数据代理. 所谓数据劫持,指的是在访问或者修改对象的某个属性时,通过一段代码拦截这个行为,进行额外的操作或者修改返回结果.比较典型的是 Object.defineProperty() 和 ...

  3. charles SSL代理设置

    本文参考:charles SSL代理设置 charles SSL代理设置 SSL Proxying Srtting 这里最常用的设置就是第一个ssl proxying,这里记录了需要捕获哪些ssl的信 ...

  4. charles 外部代理设置

    本文参考:charles 外部代理设置 external proxy 外部代理设置 有时候您可能需要使用网络上的代理服务器才能访问Internet. 在这种情况下,您需要为Charles配置外部代理. ...

  5. Charles使用part2——代理设置

    一.charles代理原理: 如果本地开了代理:  二.设置代理 1.设置代理端口: proxy->proxy setting 打开代理设置界面,代理端口默认是 8888,可以使用默认也可以自己 ...

  6. .4-Vue源码之数据劫持(2)

    开播了开播了! vue通过数据劫持来达到监听和操作DOM更新,上一节简述了数组变化是如何监听的,这一节先讲讲对象属性是如何劫持的. // Line-855 Observer.prototype.wal ...

  7. Vue 核心之数据劫持

    前端界空前繁荣,各种框架横空出世,包括各类mvvm框架横行霸道,比如Angular.Regular.Vue.React等等,它们最大的优点就是可以实现数据绑定,再也不需要手动进行DOM操作了,它们实现 ...

  8. charles代理以及关于其抓取https信息的操作

    一直没有写一篇关于charles的文章来记录,但是发现偶尔还是会忘记,所以还是记一下,查起来比较方便. 首先在安装了charles之后默认的本地代理地址是 127.0.0.1:8888这个地址.如果希 ...

  9. vue双向绑定(数据劫持+发布者-订阅者模式)

    参考文献:https://www.cnblogs.com/libin-1/p/6893712.html 实现mvvm主要包含两个方面,数据变化更新视图,视图变化更新数据. 关键点在于data如何更新v ...

随机推荐

  1. 【转载】如何在Android中避免创建不必要的对象

    在编程开发中,内存的占用是我们经常要面对的现实,通常的内存调优的方向就是尽量减少内存的占用.这其中避免创建不必要的对象是一项重要的方面. Android设备不像PC那样有着足够大的内存,而且单个App ...

  2. sql使用cte表达式进行递归查询

    --递归获取所有子节点 with temp as ( select * from MK_Base_Department where F_DepartmentId='5f258320-c1b7-42a4 ...

  3. DataGuard搭建逻辑StandBy

    DataGuard搭建逻辑StandBy 原创 作者:bayaim 时间:2016-03-31 17:23:48 272 0删除编辑   物理StandBy优点是效率高,缺点是只读模式不能恢复,恢复模 ...

  4. day35作业

    1. 查询所有大于60分的学生的姓名和学号 (DISTINCT: 去重) -- 2.查询每个老师教授的课程数量 和 老师信息 -- 3. 查询学生的信息以及学生所在的班级信息 -- 4.学生中男生的个 ...

  5. python爬虫中文乱码问题(request方式爬取)

    https://blog.csdn.net/guoxinian/article/details/83047746   req = requests.get(url)返回的是类对象 其包括的属性有: r ...

  6. Python__new__方法、定制属性访问、描述符与装饰器

    __new__方法的运行顺序 装饰器的概念的用法 三个内置装饰器 类中属性的访问过程 __new__方法 创建实例的方法 __new__方法是在类创建实例的时候自动调用的 实例是通过类里面的__new ...

  7. [Linux]gocron定时任务平台的部署

    采用二进制文件的方式部署非常简单,因为go已经把源码打包成了可执行文件,下载下来直接运行就可以了,不需要自己去编译和配置依赖 下载执行文件的地址是:https://github.com/ouqiang ...

  8. Could not resolve resource location pattern [classpath:com/****/mappers/*.xml]: class path resource [com/****/mappers/] cannot be resolved to URL because it does not exist的问题

    这里建议先去看看路径的问题,看看application.xml的里面的导入的相应的配置文件的路径有没有问题,如下: 再者看看相应的注解有没有加上,service和controller等的注解 如果再不 ...

  9. Kettle 执行SQL脚本

    以下操作都在5.0.1版本下进行开发,其余版本可以进行自动比对 本文将对Kettle5中常用步骤字段选择(又名选择/改名值,英文原名:Select Values)进行详细解释.这个步骤的功能非常强大, ...

  10. 初学JavaScript正则表达式(十)

    前瞻与后顾 断言 === assert 符合断言为正向,不符合为负向 例 'a2*3'.replace(/\w(?=\d)/g,'x') ------- x2*3 看看'\d'前面是不是'\w',如果 ...