curl konvertálása Objective-C nyelvre

Konvertálja a curl parancsokat Objective-C kóddá az NSURLSession használatával. A curl2code teljes egészében a böngészőben fut WebAssembly segítségével — az adatai privátak maradnak. Swift esetén próbálja ki a curl to Swift konverterünket. C esetén lásd: curl to C. Alább azonnal használható Objective-C példákat talál.

Hogyan másoljuk ki a curl parancsot a böngészőből

  1. 1

    Nyissa meg a DevTools-t

    Nyomja meg az F12 billentyűt vagy a Ctrl+Shift+I a böngésző fejlesztői eszközeinek megnyitásához.

  2. 2

    Lépjen a Network fülre

    Kattintson a Network fülre, és hajtsa végre a HTTP kérést kiváltó műveletet.

  3. 3

    Másolás cURL-ként

    Kattintson a jobb gombbal a kérésre → CopyCopy as cURL. Ezután illessze be fent.

Gyakran Ismételt Kérdések

Mi az az NSURLSession?

Az NSURLSession az Apple Foundation keretrendszerének API-ja a HTTP hálózatkezeléshez Objective-C (és Swift) nyelven. Kezeli az adatfeladatokat, letöltéseket, feltöltéseket és háttérben történő átviteleket. Elérhető iOS 7+ és macOS 10.9+ rendszereken. Nincs szükség harmadik féltől származó függőségre — ez a standard módja a HTTP kérések indításának Apple platformokon. A curl2code NSURLSession kódot generál Objective-C-hez.

NSURLSession vs AFNetworking — melyiket használjam?

Az NSURLSession a beépített megoldás — a legtöbb igényre elegendő és nulla függőséggel jár. Az AFNetworking korábban népszerű volt, de már karbantartási módban van; utódja az Alamofire (Swift). Új Objective-C projektekhez az NSURLSession ajánlott. Swift esetén lásd a curl to Swift konvertáló eszközünket.

Hogyan kezelhető a hitelesítés Objective-C-ben?

Állítsd be a fejlécet a NSMutableURLRequest objektumon: [request setValue:@"Bearer token" forHTTPHeaderField:@"Authorization"]. Basic auth-hoz kódold a hitelesítő adatokat NSData és base64EncodedStringWithOptions: használatával. A curl2code a -u és Bearer flageket a helyes Objective-C szintaxisra konvertálja.

Hogyan küldhetők multipart form adatok Objective-C-ben?

Építsd fel a multipart törzset NSMutableData használatával: fűzd hozzá a boundary karakterláncokat, a mezőadatokat és a fájladatokat a megfelelő CRLF elválasztókkal. Állítsd be a Content-Type fejlécet a boundary-val. Ez manuális folyamat, de teljes kontrollt biztosít. Az AFNetworking ezt egyszerűsíti az AFHTTPRequestSerializer használatával.

Hogyan kezelhetők a HTTP hibák Objective-C-ben?

Az NSURLSession completion handler-ei egy NSError paramétert biztosítanak — ellenőrizd ezt hálózati/átviteli hibákra. Alakítsd a választ NSHTTPURLResponse típussá és ellenőrizd a statusCode értéket. Használd az NSURLSession delegate metódusait a részletesebb hibakezeléshez, beleértve a hitelesítési kihívásokat és az átirányításokat.

Hogyan dolgozzunk completion block-okkal az NSURLSession-ben?

Az NSURLSession block-alapú callback-eket használ: [session dataTaskWithRequest:request completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) { ... }]. Mindig hívd meg a [task resume] metódust az indításhoz. Egymás utáni kérésekhez ágyazd egymásba a block-okat vagy használj dispatch group-okat a dispatch_group_notify segítségével.

Hogyan állítható be időtúllépés Objective-C-ben?

Állítsd be az NSURLSessionConfiguration objektumon: config.timeoutIntervalForRequest = 30 és config.timeoutIntervalForResource = 300. Vagy kérésenként: request.timeoutInterval = 30. Az időtúllépési hibák NSURLErrorTimedOut kódként érkeznek az error paraméterben. Ezek a curl --max-time opciójának felelnek meg.

Hogyan használható proxy az NSURLSession-nel?

Állítsd be a connectionProxyDictionary-t az NSURLSessionConfiguration-ben olyan kulcsokkal, mint a (NSString *)kCFNetworkProxiesHTTPProxy és a port. Az NSURLSession alapértelmezés szerint tiszteletben tartja a rendszerszintű proxy beállításokat macOS és iOS rendszereken. PAC fájlok esetén a rendszerbeállításokon keresztül konfiguráld.

Hogyan küldhető POST kérés JSON törzzsel Objective-C nyelven?

Konvertáljon egy olyan curl POST parancsot, mint a curl -X POST -H "Content-Type: application/json" -d "{"key":"value"}" URL, Objective-C kódra a curl2code segítségével. A generált kód a [request setHTTPBody:[NSJSONSerialization dataWithJSONObject:dict options:0 error:nil]] megoldást használja. A curl2code automatikusan felismeri a JSON tartalmú -d/--data flageket, és beállítja a megfelelő Content-Type fejlécet a NSURLSession kódban.

Hogyan adható hozzá Bearer token hitelesítés Objective-C nyelven?

Adja át a curl -H "Authorization: Bearer YOUR_TOKEN" URL parancsot a curl2code eszköznek, és az legenerálja a NSURLSession kódot az auth fejléccel: [request setValue:@"Bearer TOKEN" forHTTPHeaderField:@"Authorization"]. A curl2code felismeri a Bearer tokeneket a -H "Authorization: Bearer ..." és a --oauth2-bearer flagekből is. Basic auth esetén használja a -u user:pass kapcsolót.

Hogyan állítható be a Content-Type fejléc Objective-C nyelven?

A curl2code a curl -H "Content-Type: application/json" URL parancsot a megfelelő fejléccel ellátott NSURLSession kódra konvertálja: [request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"]. A -d adatoknál a curl alapértelmezés szerint az application/x-www-form-urlencoded értéket használja; a -F űrlapfeltöltéseknél pedig a multipart/form-data értéket. A curl2code mindegyiket a megfelelő NSURLSession API-hoz rendeli.

Hasznos linkek

curl útmutatók

curl konvertálása más nyelvekre