【微信小程序】使用Charles抓包

注意:这里仅为抓取电脑微信小程序数据包
Charles抓包工具汉化版下载 v4.5.6 绿色版
在这里插入图片描述

一、首先打开Charles,先进行Charles软件的相关设置

1、首先需要打开windows代理,先找到代理设置在这里插入图片描述
设置代理端口为8888,并且勾选图中复选框,最后点击确认。
在这里插入图片描述
2、设置ssl代理设置,找到ssl代理设置
在这里插入图片描述
勾选启用ssl代理,点击添加,并且按照下图输入
在这里插入图片描述
检查无误后,点击确认
3、安装证书
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
看到如图所示明文,则证书安装成功。
在这里插入图片描述

### Charles 抓包微信小程序时出现乱码的解决方案 在使用 Charles 进行微信小程序抓包的过程中,如果遇到 Request 和 Response 显示乱码的情况,可以按照以下方法逐一排查并解决问题。 #### 配置 SSL 代理设置 确保已正确配置 SSL 代理功能。进入 **Tools -> Proxy -> SSL Proxying Settings** 菜单,在 Hosts 列表中添加目标域名[^4]。例如,如果你要抓取微信小程序的数据流,则需要将 `*.weixin.qq.com` 或其他相关的小程序服务地址加入到此列表中。 #### 安装根证书 为了能够解密 HTTPS 请求的内容,必须让设备信任 Charles 的自签名 CA 根证书。具体步骤如下: 1. 打开 Charles 并访问其内置网站 `http://chls.pro/ssl` 下载对应的平台证书文件。 2. 将该证书导入至测试设备的操作系统或浏览器的信任存储区。 3. 对于 iOS 设备而言,还需要进一步启用 App Transport Security (ATS) 设置以便允许不受限的安全连接[^3]。 #### 修改编码方式 有时即使完成了上述两项基本准备工作仍会碰到字符集错误引发的乱码现象。此时可尝试调整 Charles 中关于文本渲染的方式: - 右键点击有问题的那个 session 条目; - 选择 Edit -> Encoding ,手动切换成 UTF-8 或者 GBK 等适合当前数据源实际使用的编码标准[^2]。 另外一种常见情况是因为压缩算法造成的视觉上看起来像“乱码”。可以通过取消勾选 “Enable HTTP Compression” 功能来规避这个问题。 ```python # 如果发现仍然存在部分特殊场景下的乱码问题, # 可以考虑编写脚本来自动处理这些异常状况。 import chardet def detect_and_convert_encoding(data_bytes): detected_info = chardet.detect(data_bytes) original_charset = detected_info['encoding'] if not original_charset or 'utf' in str(original_charset).lower(): return data_bytes.decode('utf-8') else: try: converted_str = data_bytes.decode(original_charset, errors='replace') return converted_str except Exception as e: print(f"Error during conversion: {e}") return None ``` 通过以上几个方面的综合调试应该能有效改善大部分由 Charles 引起的微信小程序抓包过程中产生的乱码难题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值