27/12/2022
Fiddler til iOS: En Omfattende Guide til Debugging af Webtrafik
I den digitale tidsalder, hvor mobile enheder dominerer vores daglige interaktioner, er evnen til at forstå og debugge netværkstrafikken fra disse enheder blevet afgørende for udviklere og tekniske entusiaster. For iOS-brugere, der ønsker at dykke ned i, hvordan deres apps og enheder kommunikerer over netværket, fremstår Fiddler som et kraftfuldt værktøj. Selvom Fiddler primært er udviklet til Windows, kan det med den rette konfiguration effektivt bruges til at inspicere webtrafik fra iPhones og iPads. Denne artikel vil guide dig gennem processen med at opsætte Fiddler til at fungere som en proxy for din iOS-enhed, herunder håndtering af både HTTP- og HTTPS-trafik.

Hvad er Fiddler?
Fiddler er en gratis web debugging proxy, der oprindeligt blev udviklet af Eric Lawrence og nu ejes af Progress Software. Dens primære funktion er at opsnappe og inspicere al HTTP- og HTTPS-trafik, der passerer mellem din computer og internettet. Dette gør det til et uvurderligt værktøj for udviklere, der tester webapplikationer, mobilapps eller ønsker at forstå netværkskommunikationen på et dybere plan. Fiddler kan vise detaljerede oplysninger om anmodninger og svar, tillade modificering af trafik, simulere forskellige netværksforhold og meget mere. Mens Fiddler Classic primært kører på Windows, findes der også nyere versioner som Fiddler Everywhere, der understøtter macOS og Linux, dog med et lidt anderledes funktionssæt.
Kan Fiddler Debugge iOS Trafik?
Ja, Fiddler kan absolut bruges til at debugge webtrafik fra iOS-enheder, forudsat at du har en Windows-baseret PC til at køre Fiddler på og at din PC og din iOS-enhed er forbundet til det samme Wi-Fi-netværk. Processen involverer at konfigurere Fiddler til at acceptere forbindelser fra andre enheder og derefter indstille din iOS-enheds proxy-indstillinger til at pege på din Fiddler-kørende PC. Dette giver dig mulighed for at se alle HTTP- og HTTPS-anmodninger, som din iOS-enhed foretager.
Opsætning af Fiddler til iOS Trafik
Før du kan begynde at inspicere din iOS-enheds trafik, skal Fiddler konfigureres korrekt. Her er de nødvendige trin:
Trin 1: Konfigurer Fiddler på din PC
- Åbn Fiddler: Start Fiddler på din Windows PC.
- Tillad Fjernforbindelser: Gå til Tools > Fiddler Options. Vælg fanen Connections. Marker afkrydsningsfeltet ved siden af "Allow remote computers to connect". Klik OK.
- Genstart Fiddler: Du skal genstarte Fiddler for, at ændringerne kan træde i kraft.
- Firewall-konfiguration: Det er muligt, at din firewall blokerer for indgående forbindelser. Du skal muligvis konfigurere din firewall til at tillade indgående forbindelser til Fiddler-processen.
Trin 2: Find din PCs IP-adresse
For at din iOS-enhed kan forbinde til Fiddler, skal du kende IP-adressen på din PC. Du kan nemt finde dette ved at holde musen over "Online"-indikatoren i Fiddlers værktøjslinje. Fiddler lytter som standard på port 8888.
Trin 3: Verificer Forbindelsen
For at sikre, at din PC og iOS-enhed kan kommunikere, kan du åbne en webbrowser på din PC og besøge http://[Din Fiddler PC's IP-adresse]:8888. Hvis du ser "Fiddler Echo Service"-websiden, betyder det, at forbindelsen fungerer korrekt.
Trin 4: Deaktiver Mobildata på iOS
Hvis du bruger en iPhone, er det vigtigt at deaktivere din 3G/4G/5G-forbindelse for at sikre, at al trafik tvinges igennem Wi-Fi og dermed Fiddler. Gå til Indstillinger > Mobilnetværk og slå "Mobildata" fra.
Konfigurer din iOS-enhed som Proxy
Når Fiddler er sat op på din PC, skal du konfigurere din iOS-enhed til at bruge Fiddler som sin proxy:
- Åbn Indstillinger: Gå til Indstillinger-appen på din iPhone eller iPad.
- Wi-Fi: Tryk på Wi-Fi.
- Dit Netværk: Find det Wi-Fi-netværk, du er forbundet til, og tryk på det lille blå "i"-ikon ved siden af netværksnavnet.
- HTTP Proxy: Rul ned til sektionen "HTTP Proxy" og vælg Manuel.
- Server og Port: I feltet "Server" skal du indtaste IP-adressen på din Fiddler-kørende PC. I feltet "Port" skal du indtaste den port, som Fiddler lytter på (som standard 8888).
- Autentificering: Sørg for, at "Autentificering" er slået fra.
Nu skulle al webtrafik fra din iOS-enhed blive sendt igennem Fiddler. Du kan verificere dette ved at åbne Safari på din iOS-enhed og besøge en hjemmeside. Du skulle gerne se den tilsvarende anmodning dukke op i Fiddler.

Dekryptering af HTTPS Trafik fra iOS
Mens opsætningen ovenfor tillader dig at fange HTTP-trafik, vil HTTPS-trafik blive vist som krypteret og ofte med certifikatfejl. For at Fiddler kan dekryptere og vise HTTPS-trafik, skal du installere Fiddlers rodcertifikat på din iOS-enhed og godkende det.
Trin 1: Installer Fiddler's Certificate Maker Plugin
Selvom det ikke altid er strengt nødvendigt, kan det være en god idé at installere et plugin, der sikrer Fiddler genererer iOS-kompatible certifikater. Download "Certificate Maker"-plugin'et fra Fiddlers officielle kilder (f.eks. via http://fiddler2.com/r/?FiddlerCertMaker). Efter installationen skal Fiddler genstartes.
Trin 2: Download og Installer Fiddler's Rodcertifikat på iOS
- Åbn Safari på din iOS-enhed.
- Naviger til Fiddler's Certifikat-side: Indtast
http://ipv4.fiddler:8888i adresselinjen og tryk Enter. - Download Certifikatet: På "Fiddler Echo Service"-siden, find og tryk på linket til at downloade "FiddlerRoot certificate". Dette vil downloade en fil med navnet
FiddlerRoot.cer. - Installer Certifikatet: Når download er fuldført, åbn den downloadede
FiddlerRoot.cer-fil. iOS vil automatisk genkende den som en profiltilføjelse. Tryk på "Installer"-knappen. - Bekræft Installationen: Du vil sandsynligvis se en advarsel om, at certifikatet ikke er betroet. Tryk "Installer" igen for at bekræfte.
Trin 3: Godkend Rodcertifikatet på iOS
Selvom certifikatet er installeret, skal det stadig godkendes for fuld tillid:
- Gå til Indstillinger > Generelt.
- Rul ned til bunden og tryk på Om.
- Rul helt ned til bunden og tryk på Certifikat-tillidsindstillinger.
- Find "DO_NOT_TRUST_FiddlerRoot" og aktiver knappen ved siden af det.
Efter disse trin skulle Fiddler nu kunne dekryptere og vise HTTPS-trafik fra din iOS-enhed uden certifikatfejl. Husk, at denne proces kan have sikkerhedsmæssige implikationer, især hvis du forbinder til offentlige netværk. Det er vigtigt at deaktivere proxy-indstillingerne og eventuelt fjerne Fiddlers rodcertifikat, når du er færdig med at debugge.
Fejlfinding og Almindelige Problemer
Selvom opsætningen generelt er ligetil, kan der opstå problemer:
- Ingen Trafik i Fiddler: Kontroller, at din PC og iOS-enhed er på samme netværk. Verificer IP-adressen og porten i iOS' proxy-indstillinger. Tjek firewall-indstillingerne på din PC.
- HTTPS Certifikatfejl: Sørg for, at du har fulgt alle trin til at installere og godkende Fiddlers rodcertifikat på din iOS-enhed. Genstart både Fiddler og din iOS-enhed. Nogle apps bruger "certificate pinning", hvilket kan forhindre Fiddler i at inspicere deres trafik, selv med det korrekte certifikat.
- Forbindelsen Fejler: Hvis din iOS-enhed ikke kan finde din PC, kan det skyldes netværkskonfigurationen. Prøv at pinge din PC's IP-adresse fra din iOS-enhed (hvis muligt) eller omvendt. Brug af en mobil hotspot fra din PC kan nogle gange løse problemer med netværksopdagelse.
- Google Login Problemer: I et specifikt tilfælde oplevede en bruger problemer med Google login på iPad med en
NSURLErrorDomain: -999fejl. Selvom Fiddler-debugging ikke direkte løste problemet, hjalp en nulstilling af netværksindstillingerne på iPaden. Dette indikerer, at nogle problemer kan være specifikke for enhedens netværkskonfiguration snarere end Fiddler-opsætningen.
Hvornår skal du bruge Fiddler til iOS?
Fiddler er et uundværligt værktøj i flere scenarier:
- App-udvikling: For at forstå, hvordan din mobile app kommunikerer med backend-servere.
- Fejlfinding: Når en app opfører sig uventet, kan Fiddler afsløre årsagen ved at vise de netværksanmodninger, der sendes og modtages.
- API-test: For at inspicere data sendt til og fra API'er.
- Sikkerhedstest: For at identificere potentielle sikkerhedssårbarheder i kommunikationen.
Alternativer til Fiddler for iOS
Mens Fiddler er et fremragende værktøj, findes der også andre proxy-værktøjer, der kan bruges til at inspicere iOS-trafik, og nogle af disse har endda dedikerede iOS-versioner:
- Charles Proxy: Et populært kommercielt alternativ, der er kendt for sin brugervenlighed og brede platformunderstøttelse, inklusive en macOS-version.
- Proxyman: En nyere, moderne proxy-applikation til macOS, der også tilbyder en intuitiv brugerflade til inspektion af iOS-trafik.
- Wireshark: Selvom Wireshark er et kraftfuldt netværksanalyseværktøj, er det mere komplekst at sætte op til mobil enhedstrafik sammenlignet med dedikerede HTTP-proxies som Fiddler.
Afsluttende Bemærkninger
At bruge Fiddler til at debugge din iOS-enheds webtrafik er en utroligt værdifuld færdighed for enhver, der arbejder med mobile teknologier. Ved at følge ovenstående trin kan du effektivt opsætte Fiddler som en proxy og få indsigt i den data, der udveksles mellem din enhed og internettet. Husk altid at fjerne proxy-indstillingerne og Fiddlers rodcertifikat fra din iOS-enhed, når du er færdig med din debugging-session, for at undgå potentielle problemer og opretholde en sikker forbindelse.
Opsummering af Nøgletrin
| Opgave | Handling |
|---|---|
| Fiddler Opsætning | Tillad fjernforbindelser (Tools > Options > Connections) |
| IP Adresse | Find PC'ens IP (hover over 'Online' i Fiddler) |
| iOS Proxy | Indstillinger > Wi-Fi > [Dit Netværk] > HTTP Proxy > Manuel (Indtast PC IP og Port 8888) |
| HTTPS Dekryptering | Download og installer FiddlerRoot certifikat på iOS (via http://ipv4.fiddler:8888) og godkend det i Certifikat-tillidsindstillinger. |
| Afslutning | Fjern proxy-indstillinger og certifikat fra iOS-enhed. |
Med denne viden er du godt rustet til at begynde din rejse ind i debugging af iOS-webtrafik med Fiddler.
Hvis du vil læse andre artikler, der ligner Fiddler til iOS: Debugging af webtrafik, kan du besøge kategorien Teknologi.
