Charles 是一個HTTP Proxy/HTTP monitor/Reverse Proxy,讓開發者可以詳細瀏覽機器與網路間的所有HTTP/SSL/HTTPS流量。包含request、response、HTTP headers(包含cookies和快取資訊)。
- SSL Proxying – view SSL requests and responses in plain text
- Bandwidth Throttling to simulate slower Internet connections including latency
- AJAX debugging – view XML and JSON requests and responses as a tree or as text
- AMF – view the contents of Flash Remoting / Flex Remoting messages as a tree
- Repeat requests to test back-end changes
- Edit requests to test different inputs
- Breakpoints to intercept and edit requests or responses
- Validate recorded HTML, CSS and RSS/atom responses using the W3C validator
Charles Features
The following features are what I believe to be the key features of Charles. The best way to explore these features and to discover others is to download the free trial.
- Records all traffic between your browser and the Internet
- Reveals the contents of all requests, responses, cookies and headers
- Supports SSL and HTTPS
- Saves valuable time
- Simulates slower internet connections
- Download statistics
- Configurable
- Quickly find and eliminate bugs
SSL Proxying
Charles can act as a man-in-the-middle for HTTP/SSL communication, enabling you to debug the content of your HTTPS sessions.
Bandwidth Throttling
Charles simulates modem speeds by effectively throttling your bandwidth and introducing latency, so that you can experience an entire website as a modem user might (bandwidth simulator).
AJAX
Charles is useful for XML development in web browsers, such as AJAX (Asynchronous Javascript and XML) and XMLHTTP, as it enables you to see the actual XML that is flowing between the client and the server. Charles natively supports JSON, JSON-RPC and SOAP; displaying each in a simplified tree format for easy viewing and debugging.
Flash
Charles is great for Adobe Flash developers as you can view the contents of LoadVariables, LoadMovie and XML loads. Charles also has native support for Flash Remoting (AMF0 and AMF3).
Autoconfigure Browser & System Proxy Settings
Charles will autoconfigure your browser's proxy settings on the following browsers:
- Windows system proxy settings (includes Internet Explorer and most other applications)
- Mac OS X system proxy settings (includes Safari and most other applications)
- Mozilla Firefox (on all platforms)
for Windows (64 bit), Mac OS and Linux (64 bit)
Compatible with macOS 10.10 — 14.
License Types
Two license types are available, User Licenses and Site Licenses. A user license permits you to use Charles on one computers. A site license of Charles permits you (and members of your organisation) to use Charles on any computer at one site (or at multiple sites with a Multi-Site License). Both license types allow sensible use on a second computer and off-site.
Upgrades
Each license is valid for the current major version of Charles at the time of purchase (currently 4.X), and remains valid for all updates up to but not including the next major version. A license is eligible for free upgrade to the next major version if the next major version is released within three months of the license purchase.