curl komutunu Objective-C diline dönüştür
NSURLSession kullanarak curl komutlarını Objective-C koduna dönüştürün. curl2code, WebAssembly aracılığıyla tamamen tarayıcınızda çalışır; verileriniz gizli kalır. Swift için curl - Swift dönüştürücümüzü deneyin. C için curl - C sayfasına bakın. Aşağıda kullanıma hazır Objective-C örnekleri yer almaktadır.
Tarayıcınızdan curl komutu nasıl kopyalanır
- 1
DevTools'u Açın
Tarayıcı geliştirici araçlarını açmak için F12 tuşuna veya Ctrl+Shift+I basın.
- 2
Network sekmesine gidin
Network sekmesine tıklayın ve HTTP isteğini tetikleyen işlemi gerçekleştirin.
- 3
cURL olarak kopyalayın
İsteğe sağ tıklayın → Copy → Copy as cURL. Ardından yukarıya yapıştırın.
Sıkça Sorulan Sorular
NSURLSession nedir?
NSURLSession, Objective-C (ve Swift) dilinde HTTP ağ işlemleri için Apple'ın Foundation framework API'sidir. Veri görevlerini, indirmeleri, yüklemeleri ve arka plan transferlerini yönetir. iOS 7+ ve macOS 10.9+ sürümlerinde mevcuttur. Üçüncü taraf bağımlılığına gerek yoktur — Apple platformlarında HTTP istekleri yapmanın standart yoludur. curl2code, Objective-C için NSURLSession kodu oluşturur.
NSURLSession vs AFNetworking — hangisi kullanılmalı?
NSURLSession yerleşik çözümdür — çoğu ihtiyaç için yeterlidir ve sıfır bağımlılık gerektirir. AFNetworking geçmişte popülerdi ancak şu an bakım modundadır; halefi Alamofire'dır (Swift). Yeni Objective-C projeleri için NSURLSession önerilir. Swift için curl to Swift dönüştürücümüze bakın.
Objective-C'de kimlik doğrulama nasıl yönetilir?
NSMutableURLRequest üzerinde başlığı ayarlayın: [request setValue:@"Bearer token" forHTTPHeaderField:@"Authorization"]. Basic auth için kimlik bilgilerini NSData ve base64EncodedStringWithOptions: ile kodlayın. curl2code, -u ve Bearer bayraklarını doğru Objective-C sözdizimine dönüştürür.
Objective-C'de çok parçalı form verisi nasıl gönderilir?
Çok parçalı gövdeyi NSMutableData ile oluşturun: sınır dizelerini, alan verilerini ve dosya verilerini uygun CRLF ayırıcılarıyla ekleyin. Content-Type başlığını sınır (boundary) ile birlikte ayarlayın. Bu işlem manueldir ancak tam kontrol sağlar. AFNetworking bunu AFHTTPRequestSerializer ile basitleştirir.
Objective-C'de HTTP hataları nasıl yönetilir?
NSURLSession tamamlama blokları bir NSError parametresi sağlar — ağ/taşıma hataları için bunu kontrol edin. Yanıtı NSHTTPURLResponse tipine dönüştürün ve statusCode değerini kontrol edin. Kimlik doğrulama zorlukları ve yönlendirmeler dahil daha ayrıntılı hata yönetimi için NSURLSession delegate metodlarını kullanın.
NSURLSession'da tamamlama blokları (completion blocks) ile nasıl çalışılır?
NSURLSession blok tabanlı geri çağırmalar kullanır: [session dataTaskWithRequest:request completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) { ... }]. Başlatmak için her zaman [task resume] çağırın. Sıralı istekler için blokları iç içe yerleştirin veya dispatch_group_notify ile dispatch gruplarını kullanın.
Objective-C'de zaman aşımı nasıl ayarlanır?
NSURLSessionConfiguration üzerinde ayarlayın: config.timeoutIntervalForRequest = 30 ve config.timeoutIntervalForResource = 300. Veya istek başına: request.timeoutInterval = 30. Zaman aşımı hataları, hata parametresinde NSURLErrorTimedOut olarak gelir. Bunlar curl'ün --max-time seçeneğine karşılık gelir.
NSURLSession ile proxy nasıl kullanılır?
connectionProxyDictionary üzerinde NSURLSessionConfiguration'yi (NSString *)kCFNetworkProxiesHTTPProxy ve port gibi anahtarlarla ayarlayın. NSURLSession, macOS ve iOS'ta varsayılan olarak sistem genelindeki proxy ayarlarını dikkate alır. PAC dosyaları için sistem tercihleri üzerinden yapılandırma yapın.
Objective-C''de JSON gövdeli bir POST isteği nasıl gönderilir?
curl2code kullanarak curl -X POST -H "Content-Type: application/json" -d "{"key":"value"}" URL gibi bir curl POST komutunu Objective-C koduna dönüştürün. Üretilen kod [request setHTTPBody:[NSJSONSerialization dataWithJSONObject:dict options:0 error:nil]] kullanır. curl2code, JSON içeriğine sahip -d/--data bayraklarını otomatik olarak algılar ve NSURLSession kodunda uygun Content-Type başlığını ayarlar.
Objective-C''de Bearer token yetkilendirmesi nasıl eklenir?
curl2code aracına curl -H "Authorization: Bearer YOUR_TOKEN" URL komutunu iletin; araç, yetkilendirme başlığı içeren NSURLSession kodunu üretecektir: [request setValue:@"Bearer TOKEN" forHTTPHeaderField:@"Authorization"]. curl2code, hem -H "Authorization: Bearer ..." hem de --oauth2-bearer bayraklarından Bearer token değerlerini algılar. Basic auth için -u user:pass kullanın.
Objective-C''de Content-Type başlığı nasıl ayarlanır?
curl2code, curl -H "Content-Type: application/json" URL komutunu uygun başlığa sahip NSURLSession koduna dönüştürür: [request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"]. -d verisi için curl varsayılan olarak application/x-www-form-urlencoded kullanır; -F form yüklemeleri için multipart/form-data kullanır. curl2code her birini doğru NSURLSession API eşlemesine aktarır.
Faydalı Bağlantılar
curl Kılavuzları
curl Hata Kodları
Herhangi bir curl çıkış kodunu arayın — nedenler, düzeltmeler ve hata ayıklama ipuçları.
curl ile Dosya İndirme
-o, -O ile dosya kaydedin, yönlendirmeleri takip edin, indirmeleri sürdürün ve daha fazlası.
SSL, TLS ve Proxy
Sertifikaları, TLS sürümlerini, HTTP/SOCKS proxy'leri ve özel DNS yapılandırın.