Converteer curl naar Swift
Converteer curl-opdrachten naar Swift-code met URLSession. curl2code wordt volledig in je browser uitgevoerd via WebAssembly — je gegevens blijven privé. Voor Kotlin (Android), probeer onze curl naar Kotlin-converter. Voor Objective-C, zie curl naar Objective-C. Hieronder staan kant-en-klare Swift-voorbeelden.
Hoe je curl kopieert vanuit je browser
- 1
Open Ontwikkelaarstools
Druk op F12 of Ctrl+Shift+I om de ontwikkelaarstools van je browser te openen.
- 2
Ga naar het tabblad Netwerk
Klik op het tabblad Netwerk en voer de actie uit die het HTTP-verzoek activeert.
- 3
Kopiëren als cURL
Klik met de rechtermuisknop op het verzoek → Kopiëren → Kopiëren als cURL. Plak het vervolgens hierboven.
Veelgestelde vragen
Wat is Swift URLSession?
URLSession is Apple's ingebouwde HTTP-client voor iOS, macOS, watchOS en tvOS. Het verwerkt datataken, downloads, uploads, WebSocket en achtergrondoverdrachten. Geen pakketinstallatie nodig — het maakt deel uit van Foundation. Ondersteunt HTTP/2, caching en cookiebeheer. curl2code genereert URLSession-code voor alle Swift-conversies.
URLSession vs Alamofire — welke moet ik gebruiken?
URLSession is ingebouwd en dekt de meeste behoeften — gebruik het om afhankelijkheden van derden te vermijden. Alamofire voegt gemak toe: chainable request builders, automatische herhaling, responsvallidatie en multipart uploads. Voor kleine projecten is URLSession voldoende. Voor vergelijkbare ingebouwde benaderingen, zie onze curl naar Kotlin-converter of curl naar Objective-C.
Hoe ga je om met authenticatie in Swift?
Stel de header in op URLRequest: request.setValue("Bearer \(token)", forHTTPHeaderField: "Authorization"). Voor Basic auth, codeer met Data("\(user):\(pass)".utf8).base64EncodedString(). curl2code zet -u en Bearer header-vlaggen automatisch om naar Swift-code.
Hoe verstuur je multipart form-data in Swift?
Stel de multipart body handmatig samen: genereer een boundary-string, voeg elk veld/bestand toe met CRLF-scheidingstekens en stel Content-Type: multipart/form-data; boundary=... in. Gebruik voor eenvoudigere multipart Alamofire's upload(multipartFormData:). curl2code verwerkt de -F vlag-conversie voor URLSession.
Hoe ga je om met HTTP-fouten in Swift?
URLSession retourneert een optionele Error in completions — controleer op nil. Cast de respons naar HTTPURLResponse en controleer de statusCode. Gebruik met async/await (iOS 15+) try await URLSession.shared.data(for: request) in een do/catch-blok voor schone foutafhandeling.
Hoe gebruik je async/await met URLSession?
Swift 5.5+ ondersteunt async/await systeemeigen: let (data, response) = try await URLSession.shared.data(for: request). Dit vervangt completion handler closures door lineaire code. Gebruik Task { } om aan te roepen vanuit synchrone contexten. Gebruik voor gelijktijdige verzoeken async let of TaskGroup. Zie voor vergelijkbare patronen curl naar Dart.
Hoe stel je timeouts in in Swift URLSession?
Configureer op URLSessionConfiguration: config.timeoutIntervalForRequest = 30 (per verzoek) en config.timeoutIntervalForResource = 300 (totaal). Of stel request.timeoutInterval = 30 in op individuele verzoeken. Deze komen overeen met curl's --max-time en --connect-timeout opties.
Hoe gebruik je een proxy met URLSession?
Stel de proxy in op URLSessionConfiguration: config.connectionProxyDictionary = [kCFProxyHostNameKey: "proxy", kCFProxyPortNumberKey: 8080]. Gebruik voor SOCKS-proxies kCFStreamPropertySOCKSProxy sleutels. URLSession respecteert ook systeem-brede proxy-instellingen geconfigureerd in macOS/iOS instellingen.
Hoe verstuur je een POST-verzoek met een JSON body in Swift?
Converteer een curl POST-commando zoals curl -X POST -H "Content-Type: application/json" -d "{"key":"value"}" URL naar Swift met curl2code. De gegenereerde code gebruikt request.httpBody = try JSONEncoder().encode(data). curl2code detecteert automatisch -d/--data flags met JSON-inhoud en stelt de juiste Content-Type header in de URLSession code in.
Hoe voeg je Bearer token autorisatie toe in Swift?
Geef curl -H "Authorization: Bearer YOUR_TOKEN" URL door aan curl2code en het genereert URLSession code met de auth header: request.setValue("Bearer YOUR_TOKEN", forHTTPHeaderField: "Authorization"). curl2code detecteert Bearer tokens van zowel -H "Authorization: Bearer ..." als --oauth2-bearer flags. Gebruik voor Basic auth -u user:pass.
Hoe stel je de Content-Type header in in Swift?
curl2code converteert curl -H "Content-Type: application/json" URL naar URLSession code met de juiste header: request.setValue("application/json", forHTTPHeaderField: "Content-Type"). Voor -d data gebruikt curl standaard application/x-www-form-urlencoded; voor -F formulier-uploads wordt multipart/form-data gebruikt. curl2code koppelt elk type aan de juiste URLSession API.