Proxyman:现代本地Web调试代理工具

1. 简介

1.1 什么是Proxyman?

Proxyman是一款专为macOS设计的现代本地Web调试代理工具,它不仅支持macOS平台,还能无缝地与iOS和Android设备进行集成。作为一个网络调试工具,Proxyman的设计旨在提供高性能、直观且功能丰富的解决方案,使开发者能够深入网络层进行调试和问题解决。

Mac版下载地址:https://www.macappbox.com/a/proxyman.html

GitHub:https://github.com/ProxymanApp/Proxyman

1.2 使用场景

Proxyman适用于各种网络调试场景,包括拦截和检查HTTP/HTTPS请求和响应,支持WebSocket,并提供了多种高级调试工具,例如Breakpoint、Map Local、GraphQL调试等。无论是前端开发、后端开发还是移动应用开发,Proxyman都能为开发者提供强大的网络调试支持。

2. 特点

2.1 原生macOS应用

Proxyman采用Swift和Objective-C编写,是一款原生的macOS应用程序。这使得它能够充分发挥macOS平台的性能,并通过Apple SwiftNIO实现高性能网络应用程序,为用户提供流畅的体验。

2.2 全面支持Apple芯片

不论是M1、M2还是M3,Proxyman都提供全面的支持。这保证了在最新的Apple硬件平台上,Proxyman能够充分发挥其性能和功能,为用户提供高效的网络调试服务。

2.3 适用于macOS Ventura & Sonoma

Proxyman专为最新的macOS版本设计,充分利用了Ventura和Sonoma的特性。这意味着用户可以在最新的操作系统环境中充分体验Proxyman的功能,并确保与最新技术的兼容性。

2.4 无缝拦截HTTP/HTTPS请求和响应

Proxyman作为一个网络代理工具,能够无缝地拦截来自Web浏览器、iOS和Android设备的HTTP/HTTPS请求和响应。这为开发者提供了一种轻松的方式来检查应用程序和服务器之间的通信,有助于排查潜在的问题。

2.5 现代直观的用户界面

Proxyman具有现代、直观的用户界面,使得用户能够轻松进行调试和监控网络流量。直观的设计有助于用户快速上手,提高工作效率。

2.6 多个过滤器

为了更精确地定位所需信息,Proxyman提供了多个过滤器,用户可以根据协议、内容类型、URL、请求头、响应头、正文等复杂的条件进行过滤,以找到他们关心的数据。

3. 网络调试工具

3.1 基本调试工具

Proxyman提供了一系列基本调试工具,包括Compose、Repeat、Wildcard/Regex Filter、Customize Columns、Toolbar等,这些工具能够满足用户在日常调试中的基本需求。

3.2 高级工具

Proxyman的高级工具让用户可以更深入地调试网络流量。其中包括Breakpoint、Map Local、Map Remote、Blacklist、External Proxying、No Caching、Protobuf、Clear Cache、Custom Certificates、Scripting、Network Conditions、Reverse Proxy、Diff、Access Control、DNS Spoofing等。这些工具不仅可以修改请求和响应,还支持诸如自定义证书、脚本编写、网络条件模拟等高级功能。

3.3 自动设置后端开发

Proxyman能够自动捕获来自NodeJS、Ruby和Python等后端开发环境的HTTP(s)流量。这使得开发者在后端开发过程中能够轻松进行调试,提高开发效率。

4. 高级调试功能

4.1 GraphQL调试

Proxyman支持GraphQL调试,用户可以通过定义匹配规则与特定的GraphQL查询名称进行轻松调试。这为开发者在使用GraphQL时提供了更加便捷的调试手段。

4.2 脚本工具

对于那些觉得Breakpoint、Map Local GUI过慢的用户,Proxyman提供了脚本工具。用户可以使用JavaScript代码操纵请求/响应内容,加速调试过程。Proxyman提供了一系列Snippet Code、常用Add-ons和JS Libraries,使得脚本编写更加简便高效。

4.3 Breakpoint工具

Breakpoint工具是Proxyman中的一项重要功能,它允许用户在运行时即时修改请求和响应数据,而不需要改变任何客户端代码。这一功能支持修改URL、Headers、Body、Status Code、Raw Message等,为用户提供了更大的灵活性。

4.4 Map Local工具

Map Local工具允许开发者模拟响应,从而加速开发过程。通过直接修改响应的Status Code、Header和Body,开发者可以更加灵活地进行本地开发,无需等待后端的实际响应。

4.5 差异工具

Proxyman内置了差异工具,用户可以快速找出请求/响应之间的差异。支持Side-by-Side或Unified Display,并提供Light/Dark Github Theme,使得差异比对更加直观。

5. iOS/Android网络流量监测

Proxyman提供了易于遵循的说明,帮助用户捕获来自iOS/Android设备、模拟器和仿真器的HTTP流量。这使得用户能够轻松地监测移动应用的网络通信,有助于及时发现潜在问题。

6. 总结

总体而言,Proxyman是一款强大而全面的网络调试工具。其原生macOS支持、全面的Apple芯片兼容性、直观的用户界面和丰富的调试功能,使其成为开发者在网络调试方面的得力助手。无论是基本的HTTP请求/响应检查,还是复杂的GraphQL调试、脚本编写,Proxyman都提供了一套完整而灵活的解决方案。通过Proxyman,开发者能够更加轻松、高效地定位并解决网络问题,为他们的项目带来更好的开发体验。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python中使用SQLite数据库的方法2-1

1 SQLite数据库简介 SQLite数据库是一种轻量级的、优秀的开源关系型数据库。它使用Python的标准库实现,并且存储数据库在普通文件中。这些文件在不同机器和操作系统之间是可以移植的,在很多安卓手机中,也是把SQLite作为嵌入数据库使用。 2 …

SpringBoot整合Spring-Security 认证篇(保姆级教程)

本文项目基于以下教程的代码版本: https://javaxbfs.blog.csdn.net/article/details/135195636 代码仓库: https://gitee.com/skyblue0678/springboot-demo 为了跟shiro区别开,新建了一个分支: 目录 🌹1、友善问候一下 Spring …

【高性能篇】QPS概念、RT概念

什么是QPS,什么是RT? ✔️典型解析✔️扩展知识仓✔️RT ✔️QPS✔️ QPS和TPS✔️并发用户数✔️最佳线程数 ✔️典型解析 QPS,指的是系统每秒能处理的请求数(Query Per Second),在Web应用中我们更关注的是Web应用每秒能处理的re…

Arduino驱动VL6180X光学测距传感器(OLED显示)

Arduino驱动VL6180X光学测距传感器(OLED显示) 简介原理模块参数接线图代码结果 简介 VL6108X三合一光电模块,芯片内集成了IR VSEL(vertical-cavity surface-emitting laser)红外垂直腔面发射激光器光源、接近传感器、环境光传感器&#xff0…

node fs模块读取文件 readFile、readFileSync、fsPromises.readFile、createReadStream

文章目录 1.读取文件1.1 readFile1.2 readFileSync1.3 fsPromises.readFile:promise的写法1.4 fs.createReadStream 1.读取文件 readFile:异步读取文件readFileSync:同步读取文件fsPromises.readFile:promise的写法 需要注意的是…

C语言rand函数,srand函数,time函数实现随机数,及猜数字小游戏

怀心之所爱,奔赴山河 前言 最近在复习c的知识,想起之前写过一个猜数字小游戏,所以今天就把自己关于随机数的使用经验分享一下,希望对大家有帮助。 一.rand函数 1.函数的声明如下 可以看到,返回值是int类型&#xff…

【黑产攻防道04】利用pow工作量证明降低黑产的破解效率

上一期我们提到,黑产有三种常见的破解方式: 1.通过识别出验证码图片答案实现批量破解验证,即图片答案识别; 2.在了解通讯流程之后直接携带相关参数发请求,即协议破解; 3.使用各种客户端模拟器来模拟真人…

分享72个Python爬虫源码总有一个是你想要的

分享72个Python爬虫源码总有一个是你想要的 学习知识费力气,收集整理更不易。 知识付费甚欢喜,为咱码农谋福利。 链接:https://pan.baidu.com/s/1v2P4l5R6KT2Ul-oe2SF8cw?pwd6666 提取码:6666 项目名称 10 photo websites…

盘点2023 | 校企合作结硕果,产教融合谱新篇

回首2023,电巢科技与众多高校建立了紧密的合作关系,以实习就业为导向,帮助学生打开技术和产业视野,提前做好职业发展规划,按照电子行业的企业用人标准,帮助高校进行“人才前置化”培养,并且持续…

如何使用ArcGIS Pro自动矢量化建筑

相信你在使用ArcGIS Pro的时候已经发现了一个问题,那就是ArcGIS Pro没有ArcScan,在ArcGIS Pro中,Esri确实已经移除了ArcScan,没有了ArcScan我们如何自动矢量化地图,从地图中提取建筑等要素呢,这里为大家介绍…

一文详解Cookie以及Selenium自动获取Cookie

前言 以后数据获取途径以及数据资产绝对会是未来核心要素生产工具和资源之一,每个大模型都离不开更加精细化数据的二次喂养训练。不过现在来看收集大量数据的方法还是有很多途径的,有些垂直领域的专业数据是很难获取得到的,靠人力去搜寻相当…

【滑动窗口】【二分查找】C++算法:和至少为 K 的最短子数组

作者推荐 动态规划 多源路径 字典树 LeetCode2977:转换字符串的最小成本 本题涉及知识点 滑动窗口 有序向量 二分查找 LeetCode862:和至少为 K 的最短子数组 给你一个整数数组 nums 和一个整数 k ,找出 nums 中和至少为 k 的 最短非空子数组 ,并返回…