Konverter curl til Objective-C

Konverter curl-kommandoer til Objective-C-kode ved hjælp af NSURLSession. curl2code kører udelukkende i din browser via WebAssembly — dine data forbliver private. For Swift, prøv vores curl til Swift-konverter. For C, se curl til C. Nedenfor er Objective-C-eksempler, der er klar til brug.

Sådan kopierer du curl fra din browser

  1. 1

    Åbn DevTools

    Tryk på F12 eller Ctrl+Shift+I for at åbne din browsers udviklerværktøjer.

  2. 2

    Gå til fanen Network

    Klik på fanen Network og udfør den handling, der udløser HTTP-anmodningen.

  3. 3

    Kopier som cURL

    Højreklik på anmodningen → CopyCopy as cURL. Indsæt den derefter ovenfor.

Ofte stillede spørgsmål

Hvad er NSURLSession?

NSURLSession er Apples Foundation framework API til HTTP-netværk i Objective-C (og Swift). Den håndterer dataopgaver, downloads, uploads og baggrundsoverførsler. Tilgængelig på iOS 7+, macOS 10.9+. Ingen tredjepartsafhængighed er nødvendig — det er standardmåden at foretage HTTP-anmodninger på Apples platforme. curl2code genererer NSURLSession-kode til Objective-C.

NSURLSession vs AFNetworking — hvilken skal jeg bruge?

NSURLSession er den indbyggede løsning — tilstrækkelig til de fleste behov og uden afhængigheder. AFNetworking var historisk populær, men er nu i vedligeholdelsestilstand; dens efterfølger er Alamofire (Swift). Til nye Objective-C-projekter anbefales NSURLSession. For Swift, se vores curl til Swift-konverter.

Hvordan håndteres godkendelse i Objective-C?

Indstil headeren på NSMutableURLRequest: [request setValue:@"Bearer token" forHTTPHeaderField:@"Authorization"]. Til Basic auth skal du encode legitimationsoplysninger med NSData og base64EncodedStringWithOptions:. curl2code konverterer -u og Bearer-flag til den korrekte Objective-C-syntaks.

Hvordan sender man multipart form-data i Objective-C?

Konstruer multipart-bodyen med NSMutableData: tilføj boundary-strenge, feltdata og fildata med korrekte CRLF-separatorer. Indstil Content-Type med boundary. Dette er manuelt, men giver fuld kontrol. AFNetworking forenkler dette med AFHTTPRequestSerializer.

Hvordan håndteres HTTP-fejl i Objective-C?

NSURLSession completion handlers giver en NSError-parameter — tjek den for netværks-/transportfejl. Cast responset til NSHTTPURLResponse og tjek statusCode. Brug NSURLSession delegate-metoder for mere detaljeret fejlhåndtering, herunder godkendelsesudfordringer og omdirigeringer.

Hvordan arbejder man med completion blocks i NSURLSession?

NSURLSession bruger block-baserede callbacks: [session dataTaskWithRequest:request completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) { ... }]. Kald altid [task resume] for at starte. For sekventielle anmodninger skal du indlejre blocks eller bruge dispatch groups med dispatch_group_notify.

Hvordan indstilles timeouts i Objective-C?

Indstil på NSURLSessionConfiguration: config.timeoutIntervalForRequest = 30 og config.timeoutIntervalForResource = 300. Eller pr. anmodning: request.timeoutInterval = 30. Timeout-fejl ankommer som NSURLErrorTimedOut i fejlparameteren. Disse svarer til curls --max-time indstilling.

Hvordan bruges en proxy med NSURLSession?

Indstil connectionProxyDictionaryNSURLSessionConfiguration med nøgler som (NSString *)kCFNetworkProxiesHTTPProxy og port. NSURLSession respekterer som standard systemdækkende proxy-indstillinger på macOS og iOS. For PAC-filer skal du konfigurere gennem systemindstillinger.

Hvordan sender man en POST-anmodning med JSON-body i Objective-C?

Konverter en curl POST-kommando som curl -X POST -H "Content-Type: application/json" -d "{"key":"value"}" URL til Objective-C ved hjælp af curl2code. Den genererede kode bruger [request setHTTPBody:[NSJSONSerialization dataWithJSONObject:dict options:0 error:nil]]. curl2code registrerer automatisk -d/--data-flag med JSON-indhold og indstiller den relevante Content-Type-header i NSURLSession-koden.

Hvordan tilføjer man Bearer token-autorisation i Objective-C?

Send curl -H "Authorization: Bearer YOUR_TOKEN" URL til curl2code, og den genererer NSURLSession-kode med auth-headeren: [request setValue:@"Bearer TOKEN" forHTTPHeaderField:@"Authorization"]. curl2code registrerer Bearer-tokens fra både -H "Authorization: Bearer ..." og --oauth2-bearer-flag. Til Basic auth skal du bruge -u user:pass.

Hvordan indstiller man Content-Type-headeren i Objective-C?

curl2code konverterer curl -H "Content-Type: application/json" URL til NSURLSession-kode med den korrekte header: [request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"]. For -d-data bruger curl som standard application/x-www-form-urlencoded; for -F-formular-uploads bruges multipart/form-data. curl2code mapper hver af disse til den korrekte NSURLSession API.

Nyttige links

curl-guider

Konverter curl til andre sprog