Skip to main content
Charles Proxy Guide for Web
Doris Sooläte avatar
Written by Doris Sooläte
Updated over a month ago

What is Charles Proxy?

Charles Proxy sits between your app and the Internet. All networking requests and responses will be passed through Charles Proxy, so you’ll be able to inspect and even change data midstream to test how your app responds.

Installation

Go to Charles Proxy Download page and follow the instructions to download and install it on your computer.

Configuring Charles Proxy

In order for any browser (or any application) to use Charles, it must be configured to use Charles as its proxy server.

Windows Proxy Settings

Make sure "Windows Proxy" is checked and "Mozilla Firefox Proxy" is not checked under the Proxy menu item.

Mac OS Proxy Settings

Make sure "macOS Proxy" is checked and "Mozilla Firefox Proxy" is not checked  under the Proxy menu item.

SSL Certificates

The following instructions are for different browsers to help you trust your Charles Root Certificate so you wouldn't see certificate warnings.

Windows / Internet Explorer

In Charles go to the Help menu and choose "SSL Proxying > Install Charles Root Certificate". A window will appear warning you that the CA Root certificate is not trusted.

Click the "Install Certificate" button to launch the Certificate Import Wizard. The certificate must be imported into the "Trusted Root Certification Authorities" certificate store, so override the automatic certificate store selection.

Complete the wizard and your Charles Root Certificate is now installed. You may need to restart IE before the installation takes affect.

Mozilla Firefox

First, ensure that Firefox is connected to Charles. You should see browsing from Firefox being recorded in Charles.

Visit https://chls.pro/ssl in Firefox. You will be presented with a certificate import dialog. Tick the option "Trust this CA to identify websites" and complete the import.

macOS

In Charles go to the Help menu and choose "SSL Proxying > Install Charles Root Certificate". Keychain Access will open. Find the "Charles Proxy..." entry, and double-click to get info on it. Expand the "Trust" section, and besides "When using this certificate" change it from "Use System Defaults" to "Always Trust". Then close the certificate info window, and you will be prompted for your Administrator password to update the system trust settings.

You may need to quit and reopen Safari to see the change.

Google Chrome

On macOS, please follow the instructions for the macOS above. These instructions only apply to Windows.

  1. In Charles go to the Help menu and choose "SSL Proxying > Save Charles Root Certificate". Save the root certificate as a Binary Certificate (.cer) to your desktop, or somewhere where you can easily access it in the next step. 

  2. In Chrome, open the Settings. At the bottom of the settings page, click "Advanced" to open the advanced section, then click the "Manage certificates…" button.

  3. Go to the "Trusted Root Certification Authorities" tab and click "Import…".

  4. Find the certificate file you saved from Charles in the previous step, then click Next and Finish, leaving the default options, until you complete the import. Chrome will now always trust certificates signed by Charles.

  5. After importing you can delete the certificate file that you saved.

Capturing logs

To start or stop recording click on the corresponding toolbar icon or under Proxy menu item with "Start Recording" and "Stop Recording" actions. Once started you can use any browser to go to any website, such as youtube.com, and search for "Testlio" to get some traffic to appear.

Calls displayed within Charles Proxy with the button to start/stop recording highlighted.

Saving logs

Once you've stopped recording you can save your session by choosing File > Save Session.

#TestlioBot

Did this answer your question?