鸿蒙开发App 如何通过抓包查看 http 网络请求?

ops/2024/11/29 18:22:06/

通过借助第三方工具  Charles

https://www.charlesproxy.com/

https://www.zzzmode.com/mytools/charles/https://csdnimg.cn/release/blog_editor_html/release2.3.7/ckeditor/plugins/CsdnLink/icons/icon-default.png?t=O83A" alt="icon-default.png?t=O83A" />https://www.zzzmode.com/mytools/charles/ Charles 激活码计算器  

相关博客日志:https://zhuanlan.zhihu.com/p/281126584 

MAC上的使用方法:

charles抓包流程

移动端charles抓包

mac环境:

charles软件下载地址 https://xclient.info/s/charles.html

第一步:打开charles

第二步:手机连接与电脑相同的WIFI环境,手机进入wifi设置页面

完成上步操作之后 charles会弹出一个授权框 点击allow即可。至此已经可以抓包http协议。

https的抓包

第一步:打开charles的help

第二步:浏览器中输入chl.pro/ssl 下载证书

第三步: 前往设置-通用-描述文件-选择最近未安装的证书进行安装即可。

sslproxying设置

域名添加:如www.95fenapp.com

tips:1.对微信小程序抓包时 如为第一次设置 需要重新退出并进入小程序即可

2.安卓安卓证书由于机型不同 需要搜索相关教程

3.charles中的tool的 map Remote与 map Local为常用功能

Charles代理&SwitchHosts切环境

# 验收完成后,Charles代理需要及时关闭掉,否则会出现不可上网的现象。

Charles:

1、安装Charles

2、配置

  • 抓取本机的发送请求

打开charles——> 选择proxy菜单项——> 选择macOs Proxy 即可抓取本机的请求

  • 抓取移动设备发送的请求

使用charles抓取移动设备的请求需要保证移动设备和本机处于同一个网络中。

手机端使用

1、连接代理到本机(首先,确保手机与本机电脑在同一个wifi

这里默认使用的是iphone手机(安卓也一样操作即可)

手机端打开对应的网络——> 选择代理手动——> 输入对应的本机ip地址和端口号

本机ip查看:Charles->help->Local IP Adress->env对应的ip地址

2、Charles允许手机请求本机

移动设备配置之后,第一次通过手机访问手机中的发送请求时,Charles会弹出提示框,提示有设备尝试连接到Charles,是否允许,如果不允许的话,手机发送请求失败,点击Allow允许,这样这个设备的IP地址就会添加到允许列表中。

如果错误点击了Deny可以重启Charles会再此提示,或者通过Proxy->Access Control Settings手动添加地址,如果不想每个设备连接Charles都要点击允许的话,可以添加0.0.0.0/0允许所有设备连接到Charles。

经过上面的配置之后我们就可以抓取http请求的包

3、配置支持https抓包请求

默认charles是不支持https抓包的,所以需要安装对应的https证书

手机上需要输入chls.pro/ssl安装对应的证书

手机上打开设置——>通用——>描述文件与设备管理——>信任描述文件

之前经常做到这步 然后发现还是无法解析https请求,主要是遗漏了手机上证书的信任操作。

手机上打开设置——>选择通用——>关于本机——>证书信任设置


http://www.ppmy.cn/ops/137710.html

相关文章

linux桌面qt应用程序UI自动化实现之dogtail

1. 前言 Dogtail适用于Linux 系统上进行 GUI 自动化测试,利用 Accessibility 技术与桌面程序通信;Dogtail 包含一个名为 sniff 的组件,这是一个嗅探器,用于 GUI 程序追踪; 源码下载:​​dogtail PyPI 可通过sudo python setup.py install安装或sudo pip install dogt…

【基础】jsonpath

https://jsonpath.com/ 背景: 处理多层嵌套,比较复杂,这时候某个json字段吸比较麻烦,此时,吸使用jsonpath来处理这类工作场景。 安装 pip install jsonpathimport jsonpathrelation [{id: 1, label: a1, children: …

C++中智能指针的使用及其原理 -- RAII,内存泄漏,shared_ptr,unique_ptr,weak_ptr

目录 1.智能指针的使用场景分析 2.RAII和智能指针的设计思路 3.C标准库智能指针的使用 4.智能指针的原理以及模拟实现 5.shared_ptr循环引用问题和weak_ptr 5.1shared_ptr循环引用问题 5.2weak_ptr的原理和部分接口 5.3weak_ptr的简单模拟实现 6. shared_ptr的线程安…

Tülu 3:重新定义开源大模型的后训练范式

一、引言 在大型语言模型(LLM)的发展历程中,预训练阶段往往受到最多关注,动辄需要数百万美元算力投入和数万亿token的训练数据。然而,一个鲜为人知但同样关键的事实是:预训练完成的模型实际上并不能直接投…

Modern Effective C++ item 15:尽可能的使用constexpr

constexpr表达式/对象/函数 constexpr表达式值不会改变并且在编译过程就能得到计算结果的表达式。声明为constexpr的变量一定是一个const变量,而且必须用常量表达式初始化: constexpr int mf 20; //20是常量表达式 constexpr int limit mf 1;// mf 1是常量表…

(超详细图文详情)Navicat 配置连接 Oracle

1、下载依赖文件 Oracle官网下载直链:https://www.oracle.com/database/technologies/instant-client/winx64-64-downloads.html 夸克网盘下载(oracle19c版本):https://pan.quark.cn/s/5061e690debc 官网下载选择对应 Oracle 版…

Spring Boot教程之十二: Spring – RestTemplate

Spring – RestTemplate 由于流量大和快速访问服务,REST API越来越受欢迎。REST 不是一种协议或标准方式,而是一组架构约束。它也被称为 RESTful API 或 Web API。当发出客户端请求时,它只是通过 HTTP 将资源状态的表示传输给请求者或端点。传…

网络原理(一)—— http

什么是 http http 是一个应用层协议,全称为“超文本传输协议”。 http 自 1991 年诞生,目前已经发展为最主流使用的一种应用层协议。 HTTP 往往基于传输层的 TCP 协议实现的,例如 http1.0,http1.0,http2.0 http3 是…