如何使用Charles Web Proxy和Windows上的最新Android模拟器configurationSSL证书?

我想使用Charles Web代理在Windows中使用Android模拟器。 我已经成功地build立了charles并且用命令行启动了模拟器:

emulator -http-proxy 127.0.0.1:8888 @NexusOne 

我可以看到在查尔斯从Android模拟器stream量,但问题是,我正在开发一个使用SSL的实时API,我不知道如何configuration查尔斯,让我玩的数据发送和接收。 我知道在查尔斯(代理 – >代理服务器设置 – > SSL和代理 – >客户端SSL证书)设置SSL的两个领域,但我找不到任何像样的文件,让我做我想做的事情。 有没有人与查尔斯或一般证书谁可以解释如何实现这一点的经验。 也许一个证书的入门也是好的,因为我似乎缺乏知识,为什么这是如此困难。

在查尔斯,去代理>>代理设置,然后selectSSL选项卡。 将您的主机添加到位置列表。

例如,如果您的安全呼叫转到https://secure.example.com ,则可以inputsecure.example.com或* .example.com。

完成上述操作后,可能需要在Charles主窗口中右键单击呼叫,然后selectSSL Proxying选项。

希望这可以帮助。

要用charles远程捕获http或httpsstream量,您需要执行以下操作:

主机 – 机器运行查尔斯和托pipe代理客户端 – 用户的机器产生的交通,你将捕获

主机

  1. 安装完全授权的查尔斯版本
  2. 代理 – >代理设置 – >选中“启用透明HTTP代理”
  3. 代理 – >代理设置 – > SSL选项卡 – >选中“启用SSL代理”
  4. 代理服务器 – >代理服务器设置 – > SSL选项卡 – >单击添加button并在两个字段中input*
  5. 代理 – >访问控制设置 – >添加您的本地子网(例如:192.168.2.0/24)授权本地networking上的所有计算机使用来自另一台计算机的代理
  6. 在charles中设置“自动保存工具”可能是明智的,这将自动保存并旋转charles日志。

客户机:

  1. 安装并永久接受/信任charles SSL证书
    http://www.charlesproxy.com/documentation/using-charles/ssl-certificates/
  2. configurationIE浏览器,Firefox和Chrome使用套接字查尔斯托pipe代理(例如:192.168.1.100:8888)

当我testing了这一点,我拿起了两个F​​acebook的HTTPS聊天(一个是一个线路某人,另一个FROM)

你也可以通过这种方式捕获android模拟器stream量,如果你启动模拟器:

 emulator -avd <avd name> -http-proxy http://local_ip:8888/ 

LOCAL_IP是您的计算机的IP地址,而不是127.0.0.1,因为这是模拟电话的IP地址。

资料来源: http : //brakertech.com/capture-https-traffic-remotely-with-charles/

在这里值得一提的是在Android设备上这样做的一步一步的指示。 对于iOS应该是一样的:

  1. 打开查尔斯
  2. 转到代理>代理设置> SSL
  3. 选中“启用SSL代理”
  4. select“添加位置”并input主机名称和端口(如果需要)
  5. 点击确定,确保选项被选中
  6. 从这里下载Charles证书: Charles cert>
  7. 通过电子邮件将该文件发送给自己。
  8. 在您的设备上打开电子邮件并select证书
  9. 在“命名证书”input任何你想要的
  10. 单击确定,您应该收到证书已安装的消息

然后,您应该能够查看Charles中的SSL文件。 如果你想拦截和改变值,你可以使用“地图本地”工具,这真是太棒了:

  1. 在查尔斯去工具>地图本地
  2. select“添加条目”
  3. input要replace的文件的值
  4. 在“本地path”中select你想要加载的文件
  5. 点击OK
  6. 确保input被选中,然后单击确定
  7. 运行你的应用程序
  8. 你应该在“注释”中看到你的文件加载而不是活的

Charles提供HTTPS代理的方式有些改变了。

首先,证书安装选项已移至帮助菜单。

 Help -> SSL Proxying -> Install Charles Root Certificate Help -> SSL Proxying -> Install Charles Root Certificate in iOS Simulators 

Charles SSL代理

其次,从iOS 9开始,您必须在Info.plist提供一个NSAppTransportSecurity选项,如果您希望Charles能够以中间人的身份正常工作,则必须添加:

 <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key> <true/> 

作为您的域名的一部分,请参阅完整的示例:

 <key>NSExceptionDomains</key> <dict> <key>yourdomain.com</key> <dict> <key>NSIncludesSubdomains</key> <true/> <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key> <true/> <key>NSTemporaryExceptionMinimumTLSVersion</key> <string>TLSv1.1</string> </dict> 

原因是(我猜)查尔斯在作为中间人https服务器中的人之后,在某个时候在清楚的http中进行通信。

最后一步是在Charles中为此域激活SSL代理(右键单击域并select启用SSL代理)

启用HTTP代理

什么对我有用 – 真的应该转移到iPhone:

查尔斯

  1. 启用透明的Http代理
  2. 启用S​​SL代理
  3. 右键单击传入请求并selectSSL代理

苹果电脑

  1. 下载Charles CA证书包ssl.html
  2. 通过电子邮件发送您自己的charles-proxy-ssl-proxying-certificate.crt

苹果手机

  1. 在端口8888上启用Charles的http代理
  2. select并安装电子邮件附件,是信任它!

瞧,您现在可以查看SSL代理中添加的域中的encryptionstream量

这些帮助我

  1. 转到代理 – > SSL代理设置 – >添加
  2. 在这里添加您的网站名称并将端口号设为8888

在这里输入图像说明 在这里输入图像说明

  1. 右键单击左侧面板上的站点名称,然后select“启用SSL代理” 在这里输入图像说明

希望这可以帮助那里的人。