Web debugging proxy application for macOS

Charles for Mac

Charles for Mac

  -  79.37 MB  -  Trial
  • Latest Version

    Charles 5.2 LATEST

  • Review by

    Daniel Leblanc

  • Operating System

    Mac OS X 10.10 or later

  • User Rating

    Click to vote
  • Author / Product

    Karl von Randow / External Link

  • Filename

    charles-proxy-5.2.dmg

  • MD5 Checksum

    0cdf899a75734a3da1c160584f64d6cd

Charles for Mac is a web proxy software (HTTP Proxy / HTTP Monitor) that runs on your own computer. Your web browser (or any other Internet application) is then configured to access the Internet through Charles, and Charles is then able to record and display for you all of the data that is sent and received.

In Web and Internet development you are unable to see what is being sent and received between your internet browser/client and the server.

Without this visibility it is difficult and time-consuming to determine exactly where the fault is. The tool makes it easy to see what is happening, so you can quickly diagnose and fix problems.

Charles for macOS makes debugging quick, reliable and advanced; saving you time and frustration!

Features and Highlights
  • 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
How to Use
  • Install the application on your Mac
  • Launch Charles and grant necessary permissions
  • Configure macOS proxy settings to route traffic
  • Enable SSL Proxying for HTTPS debugging
  • Start browsing to capture network traffic
  • Use filters to analyze specific requests
  • Inspect request and response headers
  • Edit or repeat requests if needed
  • Save sessions for later analysis
System Requirements

macOS 10.13 High Sierra or later

Intel or Apple Silicon (M1/M2) processor

At least 4 GB RAM

200 MB free disk space

Java 1.8 or newer (bundled with app)

PROS
  • Easy to capture and inspect HTTP traffic
  • Supports HTTPS with SSL Proxying
  • User-friendly interface and layout
  • Repeat and edit requests effortlessly
  • Cross-platform availability
CONS
  • Limited free trial usage
  • Not ideal for beginners
  • May require SSL certificate setup
  • Interface can feel outdated
  • Consumes moderate system resources
Note: 30 days trial version.

Also Available: Download Charles for Windows

Why is this app published on FileHorse? (More info)
  • Charles 5.2 Screenshots

    The images below have been resized. Click on them to view the screenshots in full size.

    Charles 5.2 Screenshot 1
  • Charles 5.2 Screenshot 2
  • Charles 5.2 Screenshot 3
  • Charles 5.2 Screenshot 4

What's new in this version:

Major improvements:
- Faster and more reliable connections to dual-stack hosts using Happy Eyeballs (RFC 8305) connection establishment
- Forward 1xx interim responses, including 103 Early Hints, recorded as linked transactions
- Many HTTP/2 proxying correctness and robustness improvements (see bug fixes)

Minor improvements:
- New Unencrypted filter in the sequence view
- Improved sequence view filtering performance
- Improve expansion handling on the Structure view when using the filter
- New icons in the JSON and XML tree viewers
- Windows: JNA DLL is now codesigned
- Rewrite tool response status rewrite now works on HTTP2 responses
- Improved detection of text bodies for rewrite rules
- Rewrite the SSL certificate name when DNS Spoofing or the Rewrite tool changes the destination
- Recognise more TLS 1.3 draft minor versions and HTTP/3 draft version strings
- Propagate TCP half-close through tunnelled connections
- Flatlaf 3.7 for minor UI fixes & improvements on Linux and Windows
- New charles filter CLI subcommand for filtering requests and responses from saved Charles sessions
- --debug launch option to enable debug-level logging
- Allow saving the Error Log and streaming it to a file (right-click on Error Log)

Fixed:
- HTTP2 fixes and improvements: fixes a hang when concurrent streams exhaust the connection window; improve handling of max concurrent streams; improve hung stream detection; fix protocol error when Charles forwards a reset after remote close; fix an issue where Charles created an extra DATA frame on some GET requests; protocol compliance improvements; early connection closed handling and reporting
- Block list tool no longer hangs the connection when it blocks HTTP2 requests
- Fix NullPointerException on Active Connections frame when under load
- Avoid displaying non-sensical TLS information for in-progress streams
- Fix CSS and feed validation
- Reduce flashing when switching between requests
- macOS: menu bar icon dims again when the menu bar is inactive