charles 开始
- 开始
学习如何使用Charles以及了解它如何帮助您的最好方法就是安装它并查看它是如何工作的。如果尚未安装,请阅读安装指南。
https://www.charlesproxy.com/documentation/installation/ - 开始使用Charles
通过从“开始”菜单,或从“应用程序”文件夹,或从安装它的任何地方运行应用程序来启动Charles。
如果您安装了Firefox,您将被问到有关Firefox插件的问题。这让你告诉Charles你是否安装了Firefox插件。
在Mac OS X上,您将被问及有关Mac OS X代理设置的问题。为了在Mac OS X上自动配置代理设置,您需要通过输入密码向Charles授予权限。对于这两个问题,你可以回答“还没有”, - 第一印象: 首先你会看到一个无标题的会话。如果您的代理设置已自动配置,您现在应该能够使用web浏览器并观察Charles中记录的事件。
您将在左侧的树中看到您访问的每个网站/主机的节点。单击其中一个记录的事件,您将看到详细信息。查看正文(可能仅在响应选项卡上,除非您正在发布帖子),您将看到正在传输的数据。这是你可以用Charles做的最简单、最常见的事情。它非常强大,因为你现在可以看到所有正在传输和接收的东西——它让你从引擎盖下面看到实际发生的事情。 - 配置
浏览器和系统配置
首选项(偏好)
记录设置
代理设置
访问控制
外部代理
HTTP 1.1 - 浏览器和系统配置
为了让任何浏览器(或任何应用程序)使用Charles,必须将其配置为使用Charles作为其代理服务器。大多数浏览器都有手动配置的方法,但手动配置很烦人,因为每次启动和停止Charles时都必须进行配置和重新配置。
幸运的是,Charles可以在许多情况下自动配置代理设置,包括:
Windows/Internet Explorer代理设置–由大多数Windows应用程序自动使用
macOS代理设置–由大多数macOS应用程序自动使用
Mozilla Firefox代理设置(所有平台)-
Windows代理设置
Charles可以自动配置Windows代理设置,以便Internet Explorer和其他Windows应用程序自动开始使用Charles。默认情况下,每当Charles启动或退出时,Charles将配置然后重新配置 Windows代理设置。
Charles代理配置行为可以在Charles中的代理菜单“代理设置”对话框中更改。
如果您想自己查看,则在“连接”选项卡上的“Internet选项”控制面板中配置Windows代理设置。
Microsoft Edge还有一个附加设置,您可能需要通过浏览到about:flags并启用Allow localhost loopback来进行设置。这是连接到本地主机上运行的Charles代理所必需的。 -
macOS代理设置
Charles可以自动配置macOS系统代理设置,以便Safari和其他macOS应用程序自动开始使用Charles。
首次安装Charles时,系统将提示您授予Charles自动配置代理设置的权限。之后,Charles将在启动或退出时配置并重新配置macOS代理设置。
Charles代理配置行为可以在Charles中的代理菜单“代理设置”对话框中更改。
如果您想自己查看macOS代理设置,请在“系统首选项”的“网络”面板的“高级”区域中进行配置。
为了在Safari的Charles中使用HTTP 2,您必须在SOCKS模式下使用Charles。请参阅配置SOCKS的代理设置。https://www.charlesproxy.com/documentation/configuration/proxy-settings/ -
iOS设备设置: 要在iPhone上使用Charles作为HTTP代理,您必须在iPhone的设置中手动配置WiFi网络上的HTTP代理设置。
进入“设置”,点击Wi-Fi,找到您连接的网络,然后轻按以配置网络。向下滚动到HTTP代理设置,点击手动。在服务器字段中输入运行Charles的计算机的IP地址,在端口字段中输入Charles正在运行的端口(通常为8888)。将身份验证设置为关闭。
您的iPhone上的所有网络流量现在都将通过Charles发送。当您第一次从iPhone进行连接时,您应该会在Charles中看到提示,要求您允许流量。允许此连接。iPhone的IP地址将添加到Charles的访问控制列表中,您可以在代理菜单>访问控制设置中查看和更改该列表。
当您停止使用Charles时,请记住在您的设置中禁用HTTP代理,否则您将在应用程序中遇到令人困惑的网络故障!-
自动配置:您还可以提供自动配置URL,而不是输入手动配置。这种方法将使您的设备能够首先尝试使用Charles,但如果Charles未运行,则可以回退使用直接连接。这是一种实验方法!对于自动配置URL,输入:
https://chls.pro/X.X.X.X.pac
将X.X.X.X替换为运行Charles的计算机的IP地址。默认为8888端口。如果您使用了不同的端口,只需包含该端口,例如https://chls.pro/X.X.X.X:XXXX.pac
您还可以使用自动配置规则在iOS的SOCKS代理模式下使用Charles,尽管这不是手动设置。输入自动配置URL,如下所示:https://chls.pro/X.X.X.X:XXXX.socks.pac
HTTP 2: iOS 10上的Safari目前不支持通过HTTP代理的HTTP 2。为了在iOS上的Safari和Charles Proxy上使用HTTP 2,您需要在SOCKS模式下使用Charles,并使用上面描述的自动配置URL来指定SOCKS模式。
-
-
iOS模拟器: iOS模拟器应该使用系统代理设置。如果没有,请尝试退出并重新启动iOS模拟器。在Xcode 6中,在运行iOS模拟器之前,Charles运行并设置为macOS系统代理显得很重要。
-
火狐浏览器代理设置
配置Firefox使用您的系统代理设置。在Firefox中,首选项>高级>网络>连接Mozilla Firefox现在可以配置为使用系统代理设置,这通常是首选的,因为Charles可以控制Windows和macOS上的系统代理设置而无需安装插件。在首选项>高级>网络>连接中检查Firefox代理设置,然后按设置按钮。然后选择“使用系统代理设置”。 -
手动代理配置
在Charles中,转到代理菜单并选择代理设置。这将显示您当前配置的HTTP代理端口和SOCKS代理端口。请记下您想要使用哪一个(可能是HTTP代理)。
主机名是127.0.0.1(您自己的计算机),或者如果您想从另一台计算机访问Charles,则为您计算机的外部地址。
然后可以使用该主机名和端口配置浏览器或应用程序的代理设置。 -
Java应用程序代理配置
您可以将Java应用程序配置为在代码中或作为Java可执行文件的命令行参数使用Charles。
System.setProperty(“http.proxyHost”,“127.0.0.1”);
System.setProperty(“http.proxyPort”、“8888”);
以及HTTPS。注意,在这种情况下,您可能还希望将Java配置为信任Charles的根证书(请参阅SSL代理)。
System.setProperty(“https.proxyHost”,“127.0.0.1”);
System.setProperty(“https.proxyPort”,“8888”);
有关此信息的来源,包括更多讨论以及如何将这些设置为命令行参数:http://java.sun.com/j2se/1.5.0/docs/guide/net/proxies.html
请参阅由Charles用户将Charles与Java应用程序集成的教程。或者参见本教程,了解如何将Charles与Play框架集成。
-