Charles Proxy
{{short description|Proxy server application}}
{{Infobox software
| name = Charles Web Debugger Proxy
| author = Karl von Randow
| developer = Karl von Randow
| released = {{start date and age|2002}}
| latest release version = 4.6.7{{cite web
| title = Charles Web Debugging Proxy Application – Version History
| url = https://www.charlesproxy.com/documentation/version-history/
| date = 3 February 2025}}
| latest release date = {{start date and age|2024|07|30|df=yes}}
| operating system = Windows, Mac OS X 10.7 - 10.15, Linux{{cite web
| title = Charles Web Debugging Proxy Application – Download Charles
| url = https://www.charlesproxy.com/download/}}
| platform = Java
| size = 55 MB
| genre = Packet analyzer
| license = Trialware
| website = {{url|https://www.charlesproxy.com/}}
}}
Charles Web Debugging Proxy is a cross-platform HTTP debugging proxy server application written in Java. It enables the user to view HTTP, HTTPS, HTTP/2{{cite web
| title = Charles 4 has HTTP/2
| url = https://publicobject.com/2016/08/02/charles-4-has-http2/
| date = 2016-08-01
| author = Jesse Wilson}} and enabled TCP port traffic accessed from, to, or via the local computer. This includes requests and responses including HTTP headers and metadata (e.g. cookies, caching and encoding information) with functionality targeted at assisting developers analyze connections and messaging.
Features
- Network message analysis – Charles shows full messaging sources of all HTTP and similar TCP-based communications that pass via its proxy port.
- XML, JSON, SOAP interpretation – structured viewers that translate the raw HTTP content into a tree format for analysis.
- HTML, CSS, JavaScript viewers – providing marked-up/formatted/unminified text content display
- SSL debugging – allowing decryption of encrypted data to review/troubleshoot the transmitted content.
- Bandwidth throttling – to simulate slower internet speeds by slowing down bandwidth/speed and introducing latency, for example to simulate a slower 3G connection.
- Flash development aids – including Action Message Format (AMF) content analysis.
- Debugging HTTP connections from mobile devices – providing a proxy between an iOS{{cite web
| title = Tutorial: Using Charles Proxy With Your iOS Development And HTTP Debugging
| url = https://codewithchris.com/tutorial-using-charles-proxy-with-your-ios-development-and-http-debugging/
| date = 2016-04-11
}} or Android{{cite web
| title = Using Charles Proxy to Debug Android SSL Traffic
| url = https://medium.com/@hackupstate/using-charles-proxy-to-debug-android-ssl-traffic-e61fc38760f7
| date = 2017-06-20
| author = Erik Straub| work = Medium
}} device and a remote site, to debug HTTP connections and behavior that only occur on devices, including debugging video streaming issues, airplay issues, etc. that cannot be tested in the iOS simulator.
- Remote file debugging – ability to swap out a remote file for a local file to aid debugging a remote site without requiring access to the server files.{{cite web
| title = Remote Debugging with Charles Proxy
| url = https://davidwalsh.name/remote-debugging
| date = 2016-01-21
| author = David Walsh}}
- Debugging aids – such as repeating URL post requests to test server changes, adding breakpoints, or editing request variables.
- Validation function – ability to right-click any proxy request, and provide validation feedback using the W3C Markup Validation Service, useful for content the W3C service otherwise cannot access directly.
Browser support
See also
References
{{Reflist}}
External links
- {{Official website|https://www.charlesproxy.com/}}
Category:Web development software
{{Network-software-stub}}