【网络工具】Charles 介绍及环境配置

news2024/11/15 13:55:19

✍个人博客:Pandaconda-CSDN博客
📣专栏地址:http://t.csdnimg.cn/iAmAo
📚专栏简介:在这个专栏中,我将会整理一些工作或学习中用到的工具介绍给大家~

📘Charles 系列其它文章:【网络工具】Charles 实战(上)
❤️如果有收获的话,欢迎点赞👍收藏📁,您的支持就是我创作的最大动力💪

一、简介

1. 什么是 Charles?

Charles 中文名叫青花瓷,它是一款基于 HTTP 协议的代理服务器,通过成为电脑或者浏览器的代理,然后截取请求和请求结果达到分析抓包的目的。

2. 工作原理

Charles 本质为 HTTP/HTTPS 代理,代理转发客户端的 HTTP/HTTPS 请求,拦截服务端响应处理后返回给真实客户端。

前置步骤:

  1. 需要运行 Charles 并配置代理

  2. 在客户端上面需要配置代理

具体实现步骤:

  1. 由客户端发送请求

  2. Charles 接收再发送给服务端

  3. 服务端返回请求结果给服务端

  4. 由 Charles 转发给客户单

3. 主要功能

  1. 支持 HTTP 及 HTTPS 代理

  2. 支持流量控制

  3. 支持接口并发请求

  4. 支持重发网路请求

  5. 支持断点调试

4. Charles 的优点

对比 Fiddler 的优点:

  1. Charles 能够支持 linux、MacOs

  2. Charles 支持按域名和按接口查看报文,简洁明了

  3. Charles 支持反向代理

  4. Charles 网络限速可以选择网络类型

  5. Charles 可以解析 AMF 协议

二、下载及安装

1. 下载

下载地址:https://www.charlesproxy.com/latest-release/download.do

默认端口:8888

2. 组件介绍

主页面右侧上方可以看到请求详情,包括 Header,请求参数,Cookies 等信息。右侧下方展示返回结果,如果是 JSON,会自动进行格式化方便查看;如果返回的是图片,还可以显示出图片的预览效果。

主导航栏介绍:

请求栏介绍:

Charles 主要提供两种查看请求的视图,分别名为 “Structure” 和 “Sequence”

  • Structure 视图将网络请求按访问的域名分类(推荐)

  • Sequence 视图将网络请求按访问的时间排序

请求数据栏介绍:

如果点击下面的 "Overview" 按钮,则会显示详细的接口信息。

三、配置方法

1. 前置步骤

前置要求 - 查看主机的 IP 地址:

1. 在 Charles 的页面中点击 "Help" 选项。

2. 点击 "Local IP Address" 选项。

3. 查看主机的 IP 地址。

2. 代理配置

下面默认配置端口为 8888,如果端口冲突,可以改成其它端口。

3. 访问控制

如果不在「IP Range」 客户端 IP 列表里的 IP,则需要根据 "Prompt to allow unauthorized connections" 选项是否勾选,从而判断是否能访问:

  • 如果该选项「勾选」,则不在列表中的 IP 地址想要访问,会询问能否访问。

  • 如果该选项「没有勾选」,则不在列表中的 IP 地址不会访问。

4. 客户端代理设置

4.1 Windows 代理设置

具体步骤:

1. 在 Chrome 浏览器中输入 Chrome://setting

2. 在搜索框中输入 “代理”。

3. 点击 “打开您计算机的代理设置”。

默认开启,若未开启请按下图进行设置:

4. 在手动设置代理中,开启代理。

5. 在地址输入框中输入 Charles 的 IP 地址以及端口。

6. 点击 “保存”,关闭页面。

4.2 MacOS 代理设置

具体步骤:

1. 打开 Charles 页面,点击苹果标志,点击 "系统设置" 选项。

2. 点击 "网络",进入对应网络的 "详情信息" 页面。

3. 点击 "代理" 选项。

4. 打开 "网页代理(HTTP)" 和 "安全网页代理(HTTPS)",然后输入服务器的 IP 地址及端口。

注意:

这里的服务器信息就是前面在 Charles 上面查看的地址和端口。

5. 最后点击 "好" 按钮,保存配置信息。

4.3 MacOS 快捷代理设置

应用场景:

当 MacOS 客户端与运行 Charles 软件工具的电脑是同一台电脑时,可以通过快捷代理设置方式来进行设置。

具体步骤:

打开 Charles 工具后,选择 "Proxy" 菜单中的 "macOS Proxy" 选项。

4.4 IOS 手机代理设置

具体步骤:

  1. 在 IOS 手机中选择 "设置" - "无线局域网" 选项。

  2. 点击已连接的无线网络名称。

  3. 在 HTTP 代理的配置代理中选择 "手动" 选项。

  4. 输入服务器 IP 地址以及端口,点击 "存储" 按钮。

4.5 Android 手机代理设置

具体步骤:

  1. 在 Android 手机中选择 "设置" - "WLAN" 选项。

  2. 长按已连接的无线网络名称,点击 "修改网络"。

  3. 勾选 "显示高级选项"。

  4. 在代理选项中选择 "手动" 选项。

  5. 输入服务器 IP 地址以及端口,点击 "存储" 按钮。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1933849.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PySide在Qt Designer中使用QTableView 显示表格数据

在 PySide6 中,可以使用 Qt Model View 架构中的 QTableView 部件来显示和编辑表格数据。 1、创建ui文件 在Qt Designer中新建QMainWindow,命名为csvShow.ui。QMainWindow上有两个部件:tableview和btn_exit。 2、使用pyuic工具将ui文件转换为…

路由上传一个ui_control参数(uint32类型)控制页面UI显隐

前言:传一个uint32类型的值,通过 按位或操作符(|)来设置ui_control的值,通过按位与操作符(&)来检测是否显示或隐藏 简单介绍一下两个概念: 按位与操作符和按位或操作符都是二进…

LeetCode-随机链表的复制

. - 力扣(LeetCode) 本题思路: 首先注意到随机链表含有random的指针,这个random指针指向是随机的;先一个一个节点的拷贝,并且把拷贝的节点放在拷贝对象的后面,再让拷贝节点的next指向原链表拷贝…

申贷时,被大数据风控拒贷有哪些原因呢?

很多人特别是从事过金融行业的人来说,大数据风控相信都不陌生,因为现在的银行和机构对申贷人的大数据信用看的越来越重要,已然成看贷前审查的重要依据,那申贷时,被大数据风控拒贷有哪些原因呢?本文就与大家一起探讨一…

codeforces 1862A

文章目录 1. 题目链接2. 题目代码正确代码 3. 题目总结学习 1. 题目链接 Gift Carpet 2. 题目代码 正确代码 #include<iostream> #include<vector> using namespace std; char letterTable[21][21]; int main(){int testCase;cin >> testCase;int row;int …

如何培养企业内部的大客户管理能力

去年年底&#xff0c;A公司的销管老王因身体抱恙休了长假&#xff0c;销售小张在接手老王负责的某集团型大客户时却犯了难&#xff1a;双方历史成交的记录详情无从查起&#xff1b;维护客情关系又不知道该去拜访谁、哪位领导关心哪些信息&#xff1b;甚至集团客户各公司的跟进节…

【Python进阶】正则表达式、pymysql模块

目录 一、正则表达式的概述 1、基本介绍 2、快速使用re模块 二、正则的常见规则 1、匹配单个字符 2、原始字符串 3、匹配多个字符 4、匹配开头和结尾 5、匹配分组 三、Python与MySQL交互 1、pymysql模块的安装 2、pymysql的操作步骤 3、connection对象 4、cursor…

MongoDB教程(九):java集成mongoDB

&#x1f49d;&#x1f49d;&#x1f49d;首先&#xff0c;欢迎各位来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里不仅可以有所收获&#xff0c;同时也能感受到一份轻松欢乐的氛围&#xff0c;祝你生活愉快&#xff01; 文章目录 引言一、环境准…

【Agent】信息提取场景

文章目录 场景说明超参数调整top_ktop_ptemparetureresponse_format 提示词优化提取任务通用提示词模板防止badcase的提示词特殊符合划分待提取内容 提取的后处理评估提取性能Experiment1、通过符号学定位原文信息1.1 首位字符在原文中的index1.2 首尾N个字符&#xff0c;中间字…

【计算机毕设论文】基于SpringBoot薪资管理系统

&#x1f497;博主介绍&#xff1a;✌全平台粉丝5W,高级大厂开发程序员&#x1f603;&#xff0c;博客之星、掘金/知乎/华为云/阿里云等平台优质作者。 【源码获取】关注并且私信我 一. 功能介绍 &#x1f50d; 员工信息管理 - 系统可以轻松添加、编辑或删除员工信息&#xff…

操作系统基础 (二)

目录 六. 运行机制两种指令两种CPU状态两种程序 七. 中断和异常中断的作用中断类型中断机制基本原理 八. 系统调用定义系统调用与库函数系统调用实现的功能系统调用过程 九. OS体系结构内核分层结构模块化外核 十. 系统引导相关的数据磁盘数据主存数据 系统引导过程总述 十一. …

域泛化(Domain Generalization)

仓库&#xff1a;https://github.com/jindongwang/transferlearning 综述&#xff1a;https://arxiv.org/pdf/2103.03097、https://arxiv.org/pdf/2103.02503 1.问题及解决方案 出发点&#xff1a;需要解决domain shift、out-of-distribution (OOD)问题 解决方案&#xff1a;绕…

常用优秀内网穿透工具(实测详细版)

文章目录 1、前言2、安装Nginx3、配置Nginx4、启动Nginx服务4.1、配置登录页面 5、内网穿透5.1、cpolar5.1.1、cpolar软件安装5.1.2、cpolar穿透 5.2、Ngrok5.2.1、Ngrok安装5.2.2、随机域名5.2.3、固定域名5.2.4、前后端服务端口 5.3、NatApp5.4、Frp5.4.1、下载Frp5.4.2、暴露…

SpringMVC注解全解析:构建高效Web应用的终极指南 (下)

一. 引言 在上篇文章中&#xff0c;我们介绍了几个重要的SpringMVC注解&#xff1a; SpringBootApplication&#xff1a;Spring Boot项目的启动类注解。RequestMapping&#xff1a;用于映射URL到控制器类或方法&#xff0c;支持多种请求方式。RequestParam&#xff1a;用于绑…

长难句打卡7.15

The trend was naturally most obvious in those areas of science based especially on a mathematical or laboratory training, and can be illustrated in terms of the development of geology in the United Kingdom 这一趋势自然在以数学或实验室训练为基础的科学领域里…

新版本cesium编译1.103之后的版本

cesium1.1之后的版本文件结构域1.1之前的版本有了很大的差别&#xff0c;源码也全部移到了packages目录中。有很多依赖包没有写在根目录的package.json文件中。npm i 后直接编译会保持。 cesium源码git https://github.com/CesiumGS/cesium 1、添加缺少的包&#xff0c;缺少的…

Java 8的变革:函数式编程和Lambda表达式探索

文章目录 一、函数接口二、Lambda表达式简介三、Lambda表达式外部参数四、Lambda范例五、Runnable Lambda表达式 一、函数接口 函数接口是一个具有单个抽象方法的接口&#xff0c;接口设计主要是为了支持 Lambda 表达式和方法引用&#xff0c;使得 Java 能更方便地实现函数式编…

【论文速读】| TCSR-SQL:面向表内容感知的自检索文本到SQL方法

本次分享论文&#xff1a;TCSR-SQL: Towards Table Content-aware Text-to-SQL with Self-retrieval 基本信息 原文作者&#xff1a;Wenbo Xu, Liang Yan, Peiyi Han, Haifeng Zhu, Chuanyi Liu, Shaoming Duan, Cuiyun Gao, Yingwei Liang 作者单位&#xff1a;哈尔滨工业大…

如何使用 Containerfile/Dockerfile 构建 .net 镜像?

Podman 简介 Podman 是 Red Hat 开发的一款容器管理工具&#xff0c;它允许用户在没有守护进程的情况下运行、构建、管理和推送容器。Podman 是一个无守护进程的容器引擎&#xff0c;这意味着它不需要一个持续运行的后台进程来管理容器&#xff0c;这与 Docker 的守护进程模式…

科普文:详解23种设计模式

概叙 设计模式是对大家实际工作中写的各种代码进行高层次抽象的总结&#xff0c;其中最出名的当属 Gang of Four&#xff08;GoF&#xff09;的分类了&#xff0c;他们将设计模式分类为 23 种经典的模式&#xff0c;根据用途我们又可以分为三大类&#xff0c;分别为创建型模式…