# Charles Proxy Tutorial for iOS

**URL:** <https://forums.kodeco.com/t/charles-proxy-tutorial-for-ios/29112>\
**Category:** 🎓 Courses & Articles\
**Created:** [May 1, 2017, 1:00pm UTC](https://forums.kodeco.com/t/charles-proxy-tutorial-for-ios/29112 "2017-05-01T13:00:57Z")\
**Posts on this page:** 15\
**Page:** 1

<div class="post-metadata">

**Author:** ![astralbodies](https://assets.chunter.kodeco.com/user_avatar/forums.kodeco.com/astralbodies/32/109036_2.png) [@astralbodies](https://forums.kodeco.com/u/astralbodies)\
**Post date:** [May 1, 2017, 1:00pm UTC](https://forums.kodeco.com/t/charles-proxy-tutorial-for-ios/29112/1 "2017-05-01T13:00:57Z")

</div>

Learn how to intercept, inspect, and modify network requests with Charles Proxy to debug your iOS networking code or to take a peek inside other apps!

* * *
 This is a companion discussion topic for the original entry at [https://www.raywenderlich.com/641-charles-proxy-tutorial-for-ios](https://www.raywenderlich.com/641-charles-proxy-tutorial-for-ios)

---

<div class="post-metadata">

**Author:** ![markuswinkler](https://assets.chunter.kodeco.com/user_avatar/forums.kodeco.com/markuswinkler/32/79287_2.png) [@markuswinkler](https://forums.kodeco.com/u/markuswinkler)\
**Post date:** [May 1, 2017, 5:07pm UTC](https://forums.kodeco.com/t/charles-proxy-tutorial-for-ios/29112/2 "2017-05-01T17:07:57Z")

</div>

Great article! I stumbled over an issue installing the certificate on iOS 10.3.  
You can find a solution here:  
[https://www.neglectedpotential.com/2017/04/trusting-custom-root-certificates-on-ios-10-3/](https://www.neglectedpotential.com/2017/04/trusting-custom-root-certificates-on-ios-10-3/)

---

<div class="post-metadata">

**Author:** ![mahil\_arasu](https://assets.chunter.kodeco.com/user_avatar/forums.kodeco.com/mahil_arasu/32/65608_2.png) [@mahil\_arasu](https://forums.kodeco.com/u/mahil_arasu)\
**Post date:** [May 2, 2017, 4:36am UTC](https://forums.kodeco.com/t/charles-proxy-tutorial-for-ios/29112/3 "2017-05-02T04:36:55Z")

</div>

Great article! Similar to Charles Proxy, there is Wireshark. It has a lot of features, which includes proxy.

[https://www.wireshark.org](https://www.wireshark.org)

---

<div class="post-metadata">

**Author:** ![astralbodies](https://assets.chunter.kodeco.com/user_avatar/forums.kodeco.com/astralbodies/32/109036_2.png) [@astralbodies](https://forums.kodeco.com/u/astralbodies)\
**Post date:** [May 4, 2017, 12:22am UTC](https://forums.kodeco.com/t/charles-proxy-tutorial-for-ios/29112/4 "2017-05-04T00:22:33Z")

</div>

I use both but for some reason I prefer Charles Proxy over Wireshark for app stuff.

---

<div class="post-metadata">

**Author:** ![astralbodies](https://assets.chunter.kodeco.com/user_avatar/forums.kodeco.com/astralbodies/32/109036_2.png) [@astralbodies](https://forums.kodeco.com/u/astralbodies)\
**Post date:** [May 4, 2017, 12:23am UTC](https://forums.kodeco.com/t/charles-proxy-tutorial-for-ios/29112/5 "2017-05-04T00:23:30Z")

</div>

Thanks for that, @markuswinkler! I’ll see about getting the tutorial updated to reflect that.

---

<div class="post-metadata">

**Author:** ![d3020](https://assets.chunter.kodeco.com/user_avatar/forums.kodeco.com/d3020/32/81494_2.png) [@d3020](https://forums.kodeco.com/u/d3020)\
**Post date:** [May 4, 2017, 8:41pm UTC](https://forums.kodeco.com/t/charles-proxy-tutorial-for-ios/29112/6 "2017-05-04T20:41:17Z")

</div>

Hi,

My first post here on the forums and hoping you can help. I’m sure I’m just missing something obvious.

I’m going through the tutorial and feel like I’ve done the steps, but here is what I’m running into.  
I have an app that I have in the iOS simulator.  
It uses https for the api calls.  
I’ve included the url in the charles proxy settings and have installed the cert.

However, when I go to use my app now (with Charles running) in the simulator. I can’t log in. It won’t connect. It almost seems like having Charles on is blocking the https://… call.

Appreciate your help.

---

<div class="post-metadata">

**Author:** ![kgelner](https://assets.chunter.kodeco.com/user_avatar/forums.kodeco.com/kgelner/32/110293_2.png) [@kgelner](https://forums.kodeco.com/u/kgelner)\
**Post date:** [May 6, 2017, 11:21pm UTC](https://forums.kodeco.com/t/charles-proxy-tutorial-for-ios/29112/8 "2017-05-06T23:21:39Z")

</div>

For any HTTPS traffic, you need to set up Charles SSL proxying, which was covered briefly in the tutorial - Go to the “Proxy” menu, then “SSL Proxying Settings…”. From there add an entry with your hostname and port 443 - after that Charles will properly forward the HTTPS call (which is also why you need to install the certificate, so the HTTPS call can connect to the Charles proxy). That’s usually what is wrong (that or the certificate is not installed) when HTTPS calls fail with Charles.

---

<div class="post-metadata">

**Author:** ![peek\_tools](https://assets.chunter.kodeco.com/user_avatar/forums.kodeco.com/peek_tools/32/66374_2.png) [@peek\_tools](https://forums.kodeco.com/u/peek_tools)\
**Post date:** [May 8, 2017, 6:28am UTC](https://forums.kodeco.com/t/charles-proxy-tutorial-for-ios/29112/9 "2017-05-08T06:28:03Z")

</div>

Excellent tutorial @astralbodies 🙂

I’m the developer of a native intercept and debug tool for macOS and iOS called “Peek”. Check it out here: [https://peek.tools](https://peek.tools) (macOS) and [Connecting to the iTunes Store.](https://appstore.com/peektools) (iOS). The iOS app allows you intercept on the go, without a Mac. If you want to try it out and want a promo code: PM me or DM twitter: @inter\_cept Always happy to receive suggestions 🙂

---

<div class="post-metadata">

**Author:** ![d3020](https://assets.chunter.kodeco.com/user_avatar/forums.kodeco.com/d3020/32/81494_2.png) [@d3020](https://forums.kodeco.com/u/d3020)\
**Post date:** [May 8, 2017, 1:26pm UTC](https://forums.kodeco.com/t/charles-proxy-tutorial-for-ios/29112/10 "2017-05-08T13:26:25Z")

</div>

I’ve done what you’ve said here but still nothing. I can’t log into my app when I have Charles running. The error I get in Xcode is.  
Task: \<\_\_NSCFLocalDataTask: 0x7fbbec90ba30\>{ taskIdentifier: 1 } { completed } completed with error: An SSL error has occurred and a secure connection to the server cannot be made.

If I close Charles it works fine. Not sure why…

---

<div class="post-metadata">

**Author:** ![dariojg](https://assets.chunter.kodeco.com/user_avatar/forums.kodeco.com/dariojg/32/102762_2.png) [@dariojg](https://forums.kodeco.com/u/dariojg)\
**Post date:** [August 25, 2017, 7:40pm UTC](https://forums.kodeco.com/t/charles-proxy-tutorial-for-ios/29112/11 "2017-08-25T19:40:09Z")

</div>

Thanks for this tutorial, so far so good!

Although I didn’t have an error installing Charles SSL Certificate, I had the following problem after enabling SSL Proxying for [api.winderground.com](http://api.winderground.com). After that, refreshing the app by pulling down caused the CONNECT request to fail with:  
Failure No request was made. Possibly the SSL certificate was rejected.

The solution is to follow the instructions mentioned in the tutorial for iOS 10.3:  
Navigate to Settings \> General \> About \> Certificate Trust Testings and turn the switch on for Charles certificate.

---

<div class="post-metadata">

**Author:** ![astralbodies](https://assets.chunter.kodeco.com/user_avatar/forums.kodeco.com/astralbodies/32/109036_2.png) [@astralbodies](https://forums.kodeco.com/u/astralbodies)\
**Post date:** [September 2, 2017, 3:56pm UTC](https://forums.kodeco.com/t/charles-proxy-tutorial-for-ios/29112/12 "2017-09-02T15:56:37Z")

</div>

Hey there @dariojg! iOS 10.3 introduced some security changes that I noted in the tutorial recently. You’ll have to accept the Charles Proxy certificate as valid by following these instructions - [Trusting Custom Root Certificates on iOS 10.3 – Neglected Potential](https://www.neglectedpotential.com/2017/04/trusting-custom-root-certificates-on-ios-10-3/)

Let me know if this solves the issue!

---

<div class="post-metadata">

**Author:** ![wayneterrysson](https://s3.amazonaws.com/cdn.raywenderlich.com/community/forum-assets/noun-game-ghost-878668.png) [@wayneterrysson](https://forums.kodeco.com/u/wayneterrysson)\
**Post date:** [September 4, 2017, 4:11am UTC](https://forums.kodeco.com/t/charles-proxy-tutorial-for-ios/29112/13 "2017-09-04T04:11:23Z")

</div>

Thanks for sharing this useful guild with us. By using a private dedicated proxy you can stay anonymous in any browser. For more information about the proxy server, you can visit: [https://microleaves.com/](https://microleaves.com/)

---

<div class="post-metadata">

**Author:** ![yajeka](https://assets.chunter.kodeco.com/user_avatar/forums.kodeco.com/yajeka/32/81494_2.png) [@yajeka](https://forums.kodeco.com/u/yajeka)\
**Post date:** [October 17, 2017, 8:28am UTC](https://forums.kodeco.com/t/charles-proxy-tutorial-for-ios/29112/14 "2017-10-17T08:28:30Z")

</div>

Thanks for the tutorial. I’ve used charles a lot.  
But nowadays is iOS 10 with http2. How to use charles with http2.  
I was able to setup according [Browser & System Configuration • Charles Web Debugging Proxy](https://www.charlesproxy.com/documentation/configuration/browser-and-system-configuration/) but I see requests and reponses like this:  
`>�]�˻�}ƆO��nn�o_a���/�.70�2���ƌ�'s	�i�x��v� �tZ�����~��47�5��˾��5�C�%Ī�����+�FU�m���f�=&�a�r�;��Q�D��a�}A���� [�[�O��DzŘ��\���:Mx�*t�Bʊ����/��y����z�����Z��"լ����2c̷V�#��5��q"�C��֘���[j}`

---

<div class="post-metadata">

**Author:** ![shogunkaramazov](https://assets.chunter.kodeco.com/user_avatar/forums.kodeco.com/shogunkaramazov/32/108826_2.png) [@shogunkaramazov](https://forums.kodeco.com/u/shogunkaramazov)\
**Post date:** [November 16, 2017, 11:24pm UTC](https://forums.kodeco.com/t/charles-proxy-tutorial-for-ios/29112/15 "2017-11-16T23:24:53Z")

</div>

This tutorial is more than six months old so questions are no longer supported at the moment for it. We will update it as soon as possible. Thank you! :]

---

<div class="post-metadata">

**Author:** ![shogunkaramazov](https://assets.chunter.kodeco.com/user_avatar/forums.kodeco.com/shogunkaramazov/32/108826_2.png) [@shogunkaramazov](https://forums.kodeco.com/u/shogunkaramazov)\
**Post date:** [November 16, 2017, 11:24pm UTC](https://forums.kodeco.com/t/charles-proxy-tutorial-for-ios/29112/16 "2017-11-16T23:24:55Z")

</div>


