Charles 5.0.1 for Mac
Charles 5.0.1 MacOS
Charles is a web debugging proxy that enables a developer to view all of the HTTP and SSL/HTTPS traffic between their machine and the internet. This includes deep inspection of requests, responses, headers, TLS information, compression and performance, and binary protocols such as Protobuf for both HTTP 1.1 and 2. Charles is perfect for debugging and measuring your web or mobile app’s API requests and responses.
Features
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).
Browser & System Configuration
In order for any browser (or any application) to use Charles it must be configured to use Charles as its proxy server. Most browsers will have a way to configure this manually, but configuring manually is annoying because you have to configure and reconfigure everytime you start and stop Charles.

