---
title: 03-网络抓包和代理工具:Whistle
---
## Whistle 官网
- Whistle 官网:
- Whistle 的 GitHub:
## Whistle 安装启动
### 1、Whistle 安装
(1)通过 npm 安装 Whistle
### 2、启动 whistle
```bash
w2 start
```
然后在浏览器输入`http://127.0.0.1:8899/` 即可打开代理配置的页面。
### 3、配置代理
**chrome浏览器配置代理**:
可参考官方文档。
**Firefox浏览器配置代理**:
![](https://img.smyhvae.com/20200420_1357.png)
### 4、安装证书并添加信任:
![](https://img.smyhvae.com/20200420_0922.png)
### 手机设置代理
连接好指定的wifi后,点击那个wifi里的设置,将「代理」那一项,设置为手动,然后输入ip(电脑上的ip)、端口号(8899)。然后就可以通过电脑上的whistle工具,查看手机的网页请求。
注意,要保证手机和电脑在同一个网络下。
另外,还需要在手机的浏览器,地址栏输入`rootca.pro`,给手机安装证书。
## 捕获和拦截https请求
whistle安装证书后,可以拦截 https 请求。但是,我现在又不想拦截https请求了,该怎么卸载证书呢?
我发现,证书无法卸载,正确的操作是:
![](http://img.smyhvae.com/20180426_1621.png)
上图中,把红框部分,去掉勾选,就不捕获https了。谢谢azh童鞋。
参考链接:
- [Android 手机如何设置http代理?](https://www.zhihu.com/question/21474174)
- [使用 Whistle 对 iOS HTTPS 进行抓包](http://zhuscat.com/2017/09/20/https-proxy-on-ios/)
## 移动端调试神器:eruda
> 手机连接代理时,如何看console.log的日志信息?
> 现在,代码里有console.log,如果是在电脑浏览器上看,可以直接在控制台查看console.log的内容。但是,如果手机连接代理,在手机上打开网页的话,要怎么查看console.log的内容呢?具体做法如下:
(1)在 whistle中,新建一个名叫`Eruda H5`的代理,代理中的内容是:
```
http://xxx.com htmlAppend://{eruda.html}
```
(2)新建一个values,里面的内容是:
```html
```
然后就OK了。