Charles代理SSL连接不会显示主机名,只显示ips

azv*_*azv 21 debugging ip ssl ios charles-proxy

我正在使用Charles在android和ios上调试我的应用程序.在我在设备上安装Charles CA之后,在安全连接上发生了一些相当奇怪的事情.

在IOS上,Charles会在连接列表中向主机名显示请求,看起来很棒.

但是,在android上,它只会显示IP.我必须打开请求并检查主机名标头以找出主机名 - 这很烦人.

有什么方法吗?

Gio*_*ues 24

这是因为Android模拟器是一个VM,而不仅仅是像iOS模拟器那样的mac os进程.为了能够使用Android模拟器(在Android 8.0上测试)查看主机名,您必须转到设置 - >网络和Internet - >移动网络 - >接入点名称 - >单击接入点并将代理和端口属性设置为您的查尔斯本地地址(你可以在查尔斯 - >帮助 - >本地IP地址找到它)

更新:

谷歌在最新版本的Android模拟器上改变了这一点.现在你必须添加一个新的APN.只需创建一个具有任何名称的新APN,并将APN设置为"http://",代理到10.0.2.2并将端口设置为8888

  • 使用最新的android sdk模拟器,除了上面的答案中的步骤,你需要打开和关闭飞行模式,使接入点代理有效.这是由于最新的sdk AFAIK中的错误/问题 (4认同)
  • 谷歌在最新版本的Android模拟器上改变了这一点.现在你必须添加一个新的APN.只需创建一个具有任何名称的新APN,并将APN设置为"http://",代理到10.0.2.2并将端口设置为8888 (3认同)

小智 14

API 25+的仿真器具有一个名为AndroidWifi的模拟wifi接入点:https : //developer.android.com/studio/run/emulator#wi-fi

转到模拟器的wifi设置,连接到AndroidWifi,然后按住它并选择“修改网络”。输入您的Charles Proxy主机名和端口。它应该连接到代理,并且您应该在请求中看到域名。

不要使用模拟器扩展控件中提供的代理设置。

  • 你的绿色勾在哪里!这个 APN 的东西对我来说根本不起作用。 (2认同)