Konwertuj curl na Objective-C

Konwertuj polecenia curl na kod Objective-C przy użyciu NSURLSession. curl2code działa w całości w przeglądarce poprzez WebAssembly — Twoje dane pozostają prywatne. Do programowania w Swift wypróbuj nasz konwerter curl na Swift. W przypadku C, zobacz curl na C. Poniżej znajdują się gotowe do użycia przykłady w Objective-C.

Jak skopiować polecenie curl z przeglądarki

  1. 1

    Otwórz DevTools

    Naciśnij F12 lub Ctrl+Shift+I, aby otworzyć narzędzia programistyczne przeglądarki.

  2. 2

    Przejdź do karty Sieć

    Kliknij kartę Sieć i wykonaj akcję, która wywołuje żądanie HTTP.

  3. 3

    Kopiuj jako cURL

    Kliknij żądanie prawym przyciskiem myszy → KopiujKopiuj jako cURL. Następnie wklej je powyżej.

Najczęściej zadawane pytania

Czym jest NSURLSession?

NSURLSession to API frameworku Foundation firmy Apple do komunikacji sieciowej HTTP w Objective-C (i Swift). Obsługuje zadania danych, pobieranie, przesyłanie i transfery w tle. Dostępne w iOS 7+, macOS 10.9+. Nie wymaga zewnętrznych zależności — to standardowy sposób wykonywania żądań HTTP na platformach Apple. curl2code generuje kod NSURLSession dla Objective-C.

NSURLSession vs AFNetworking — którego użyć?

NSURLSession to wbudowane rozwiązanie — wystarczające dla większości potrzeb i bez zależności. AFNetworking był historycznie popularny, ale obecnie znajduje się w trybie konserwacji; jego następcą jest Alamofire (Swift). Dla nowych projektów w Objective-C zalecany jest NSURLSession. Dla Swift zobacz nasz konwerter curl na Swift.

Jak obsługiwać uwierzytelnianie w Objective-C?

Ustaw nagłówek w NSMutableURLRequest: [request setValue:@"Bearer token" forHTTPHeaderField:@"Authorization"]. Dla uwierzytelniania Basic zakoduj poświadczenia za pomocą NSData i base64EncodedStringWithOptions:. curl2code konwertuje flagi -u i Bearer na poprawną składnię Objective-C.

Jak wysyłać dane formularza multipart w Objective-C?

Skonstruuj ciało multipart za pomocą NSMutableData: dołącz ciągi boundary, dane pól i dane plików z odpowiednimi separatorami CRLF. Ustaw Content-Type z boundary. Jest to proces manualny, ale daje pełną kontrolę. AFNetworking upraszcza to dzięki AFHTTPRequestSerializer.

Jak obsługiwać błędy HTTP w Objective-C?

Handlery completion w NSURLSession dostarczają parametr NSError — sprawdź go pod kątem błędów sieci/transportu. Rzutuj odpowiedź na NSHTTPURLResponse i sprawdź statusCode. Użyj metod delegata NSURLSession dla bardziej szczegółowej obsługi błędów, w tym wyzwań uwierzytelniania i przekierowań.

Jak pracować z blokami completion w NSURLSession?

NSURLSession używa callbacków opartych na blokach: [session dataTaskWithRequest:request completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) { ... }]. Zawsze wywołuj [task resume], aby rozpocząć. Dla żądań sekwencyjnych zagnieżdżaj bloki lub używaj grup dyspaczowania z dispatch_group_notify.

Jak ustawić limity czasu w Objective-C?

Ustaw w NSURLSessionConfiguration: config.timeoutIntervalForRequest = 30 i config.timeoutIntervalForResource = 300. Lub na żądanie: request.timeoutInterval = 30. Błędy limitu czasu pojawiają się jako NSURLErrorTimedOut w parametrze error. Odpowiadają one opcji --max-time w curl.

Jak używać proxy z NSURLSession?

Ustaw connectionProxyDictionary w NSURLSessionConfiguration z kluczami takimi jak (NSString *)kCFNetworkProxiesHTTPProxy i portem. NSURLSession domyślnie respektuje systemowe ustawienia proxy w macOS i iOS. Dla plików PAC skonfiguruj je poprzez preferencje systemowe.

Jak wysłać żądanie POST z ciałem JSON w języku Objective-C?

Konwertuj polecenie curl POST, takie jak curl -X POST -H "Content-Type: application/json" -d "{"key":"value"}" URL na kod Objective-C za pomocą curl2code. Wygenerowany kod używa [request setHTTPBody:[NSJSONSerialization dataWithJSONObject:dict options:0 error:nil]]. curl2code automatycznie wykrywa flagi -d/--data z zawartością JSON i ustawia odpowiedni nagłówek Content-Type w kodzie NSURLSession.

Jak dodać autoryzację Bearer token w języku Objective-C?

Przekaż curl -H "Authorization: Bearer YOUR_TOKEN" URL do curl2code, a narzędzie wygeneruje kod NSURLSession z nagłówkiem autoryzacji: [request setValue:@"Bearer TOKEN" forHTTPHeaderField:@"Authorization"]. curl2code wykrywa tokeny Bearer zarówno z flag -H "Authorization: Bearer ...", jak i --oauth2-bearer. W przypadku Basic auth użyj -u user:pass.

Jak ustawić nagłówek Content-Type w języku Objective-C?

curl2code konwertuje curl -H "Content-Type: application/json" URL na kod NSURLSession z właściwym nagłówkiem: [request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"]. Dla danych -d curl domyślnie ustawia application/x-www-form-urlencoded; dla przesyłania formularzy -F używa multipart/form-data. curl2code mapuje każde z nich na odpowiednie API NSURLSession.

Przydatne linki

Poradniki curl

Konwertuj curl na inne języki