《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(16)-Charles其他骚操作之大结局
1.简介
今天就说一些Charles的其他操作、以及抓包跨域的问题和常见的问题如何解决。到此Charles这一系列的文章也要和大家说再见了,其他什么小程序、Android7.0等等的问题可以查看宏哥的Fiddler系列文章,只不过是将Fiddler换成Charles而已。
2.模拟403/404
其实之前在过滤请求中,宏哥已经介绍过White List...(白名单)刚好和这个介绍的相反Block List(黑名单),顾名思义就是设置后,就会被关进小黑屋,昏天暗地不见阳光。而在Charles这里将ip或者域名加入黑名单后,服务器返回的响应结果被Charles拦截不返回,就会出现403或者404,具体操作步骤如下:
1.菜单栏选择 “Tools”->”Block List...”,如下图所示:

2.设置允许启用黑名单功能,选择接口返回错误的形式(404 或者403),添加接口地址并保存,如下图所示:

注:【blocking action】 选项可以选择“Drop connection”或者 “Return 403 response”.前者接口会直接返回404错误,后者接口返回403错误
3.选中需要返回404/403的接口,点击【Ok】,如下图所示:

4.再次请求效果如下(接口返回403),如下图所示:


5.再次请求效果如下(接口返回404),如下图所示:

不用将其删除(Remove)或者不勾选启用黑名单即可。
3.屏蔽web网页的抓包信息
应用场景:屏蔽web网页的抓包信息
proxy-->windows proxy(前面没有对勾,就不会抓到 PC浏览器的包)
proxy-->macOS proxy(mac电脑)

4.Charles跨域
1.解决跨域问题,1.菜单栏选择 “Tools”->”Rewrite”。如下图所示:

2.勾选启用重写,添加左边重写。如下图所示:

3.编辑名称和添加需要重写的请求,如下图所示:

4.点击下面的添加,加Access-Control-Allow-Origin、access-control-allow-credentials(true),其他响应头参数视情况而定


5.配置完毕以后,重写页面如下,点击应用,确定。配置完毕,重新发起请求,会直接响应本地数据。如下图所示:

5小结
Charles其实是一款代理服务器,通过成为电脑或者浏览器的代理,然后截取请求和请求结果达到分析抓包的目的。该软件是用Java写的,能够在Windows,Mac,Linux上使用。开发iOS都在Mac系统上吧,安装Charles的时候要先装好Java环境。这么好的软件不是免费的,官网要好几十刀呢,我这里有一个Mac上的**版,点击这里下载,当然不是最新版的。如果你想体验最新版,Charles是提供试用的。
Charles主要功能
支持SSL代理。可以截取分析SSL的请求。
支持流量控制。可以模拟慢速网络以及等待时间(latency)较长的请求。
支持AJAX调试。可以自动将json或xml数据格式化,方便查看。
支持AMF调试。可以将Flash Remoting 或 Flex Remoting信息格式化,方便查看。
支持重发网络请求,方便后端调试。
支持修改网络请求参数。
支持网络请求的截获并动态修改。
检查HTML,CSS和RSS内容是否符合W3C标准。
Charles系列的使用教程到这里也要和大家说再见了,感谢大家这段时间支持和学习以及一路的陪伴。再次感谢大家读者朋友期待其他系列与宏哥再见。
6.常见问题解决
1 . 手机无法抓包的问题
检查是否配置好代理IP,端口号
检查是否与电脑在同一个局域网
检查是否关闭防火墙,代理,FQ软件
弹出询问点击“allow”或者“deny”时,误点“deny”,关闭charles重启,手机再次浏览则会重新弹出询问
2 . 解决request和response信息中的中文乱码问题
方法一 :修改charles windows版本安装目录下也有一个Charles.ini的配置文件
修改后的配置文件 添加-Dfile.encoding=UTF-8即可。

通过以上方法就可以解决Request和Response的中文乱码问题了。
3.设置代理后,浏览器打不开网页
浏览器--设置--打开代理设置--局域网设置--去除代理服务器下图选项后-确定

《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(16)-Charles其他骚操作之大结局的更多相关文章
- 《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(8)-Charles如何进行断点调试
1.简介 Charles和Fiddler一样也有个强大的功能,可以修改发送到服务器的数据包,但是修改前需要拦截,即设置断点.设置断点后,开始拦截接下来所有网页,直到取消断点.这个功能可以在数据包发送之 ...
- 《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(3)-再识Charles
1.简介 上一篇通过宏哥的介绍想必各位小伙伴或者童鞋们对Charles已经有了一个理性地认识,今天宏哥在从Charles的外貌介绍和分享一下,让小伙伴们或者童鞋们再对Charles有一个感性的认识,今 ...
- 《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(15)-Charles如何配置反向代理
1.简介 在App开发的过程当中,抓包是一个很常见的需求,而有些app的请求不会在网络设置代理时被抓到数据包,这里若是需要抓包就需要搭建反向代理. 2.什么是代理? 什么是代理,来一张图了解一下. 代 ...
- 《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(4)-Charles如何设置捕获会话
1.简介 前边几篇宏哥介绍了Charles界面内容以及作用.今天宏哥就讲解和分享如何设置Charles后,我们就可以愉快地捕获会话,进行抓包了.因为上一篇许多小伙伴看到宏哥的Charles可以分开看到 ...
- 《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(5)-Charles如何设置捕获Https会话
1.简介 在大数据时代,互联网时代,个人信息安全尤为重要,网络安全在近日多起电信诈骗事情发酵下的情况下,引起国家,企业,个人对于互联网安全进一步的重视.而之前很多以http协议传输的网站出现的网站信息 ...
- 《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(6)-Charles安卓手机抓包大揭秘
1.简介 Charles和Fiddler一样不但能截获各种浏览器发出的 HTTP 请求,也可以截获各种智能手机发出的HTTP/ HTTPS 请求. Charles也能截获 Android 和 Wind ...
- 《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(7)-Charles苹果手机手机抓包知否知否?
1.简介 Charles和Fiddler一样不但能截获各种浏览器发出的 HTTP 请求,也可以截获各种智能手机发出的HTTP/ HTTPS 请求. Charles也能截获iOS设备发出的请求,比如 i ...
- 《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(9)-Charles如何修改请求参数和响应数据-上篇
1.简介 宏哥之前一直用postman调接口比较多(web端),也非常容易上手和操作.但有时候想要去修改APP的页面展示,造数据又会比较麻烦,你自己造相对还好些,要是让开发造,还得低眉顺眼的去求人.通 ...
- 《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(11)-Charles如何模拟弱网环境
1.前言 张三:"我写的软件好奇怪啊,在网络好的时候一点问题也没有,但是信号差的时候明显卡顿,看来我只能一直蹲在卫生间.电梯或者地铁(信号差)调bug了". Charles:&qu ...
- 《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(12)-Charles如何使用Repeat功能进行简单压力测试
1.前言 李四:"今天好累啊,点的我手指都疼了.我一直被要求给后端接口的同事重复发送请求来调试接口." Charles:"哎呀,李四同学,你怎么能一条一条的手动发送呢 我 ...
随机推荐
- 批量IP 查询脚本
脚本简单,找到一个免费的IP 查询接口不容易 #-*-coding:utf-8-*- import requests import csv import re header = { 'User-Age ...
- Oracle-展示的时候出现????乱码
Oracle-展示的时候出现????乱码 配置环境变量: NLS_LANG SIMPLIFIED CHINESE_CHINA.ZHS16GBK
- Sitecore 应用与介绍
前言 因为工作需要,开始了 sitecore 之旅,在使用之中碰到了许多问题,后续开始写一下关于 sitecore 的文章. sitecore 官网:https://www.sitecore.com/ ...
- 加深印象篇之Servlet
环境配置 需要配置web.xml文件, <web-app> <servlet> <servlet-name>你起的一个类的名字</servlet-name&g ...
- 基于声网 Flutter SDK 实现互动直播
前言 互动直播是实现很多热门场景的基础,例如直播带货.秀场直播,还有类似抖音的直播 PK等.本文是由声网社区的开发者"小猿"撰写的Flutter基础教程系列中的第二篇,他将带着大家 ...
- Android 音视频 - EGL 源码解析以及 C++ 实现
OpenGL 是一个跨平台的 API,而不同的操作系统(Windows,Android,IOS)各有自己的屏幕渲染实现.所以 OpenGL 定义了一个中间接口层 EGL(Embedded Graphi ...
- [C++/Java/Py/C#/Ruby/Swift/Go/Scala/Kotlin/Rust/PHP/TS/Elixir/Dart/Racket/Erlang] LeetCode2185. 统计包含给定前缀的字符串
目录 题解地址 代码 cpp java python3 C# ruby swift golang scala kotlin rust php typescript elixir dart racket ...
- Spring Security 框架使用
更多内容,前往IT-BLOG 一.Spring Security 简介 Spring Security 是一个能够为基于 Spring 的企业应用系统提供声明式的安全访问控制解决方案的安全框架.它提供 ...
- Leetcode Practice -- 字符串
目录 14. 最长公共前缀 思路解析 151. 反转字符串中的单词 思路解析 125. 验证回文串 思路解析 415. 字符串相加 思路解析 3. 无重复字符的最长子串 思路解析 8. 字符串转换整数 ...
- 仓库管理、dockerfile
Docker仓库管理 仓库(Repository)是集中存放镜像的地方. Docker Dockerfile 什么是Dockerfile? Dockerfile 是一个用来构建镜像的文本文件, ...