curl komutunu Swift diline dönüştür

URLSession kullanarak curl komutlarını Swift koduna dönüştürün. curl2code, WebAssembly aracılığıyla tamamen tarayıcınızda çalışır; verileriniz gizli kalır. Kotlin (Android) için curl - Kotlin dönüştürücümüzü deneyin. Objective-C için curl - Objective-C sayfasına bakın. Aşağıda kullanıma hazır Swift örnekleri yer almaktadır.

Tarayıcınızdan curl komutu nasıl kopyalanır

  1. 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. 2

    Network sekmesine gidin

    Network sekmesine tıklayın ve HTTP isteğini tetikleyen işlemi gerçekleştirin.

  3. 3

    cURL olarak kopyalayın

    İsteğe sağ tıklayın → CopyCopy as cURL. Ardından yukarıya yapıştırın.

Sıkça Sorulan Sorular

Swift URLSession nedir?

URLSession, Apple'ın iOS, macOS, watchOS ve tvOS için yerleşik HTTP istemcisidir. Veri görevlerini, indirmeleri, yüklemeleri, WebSocket'i ve arka plan transferlerini yönetir. Paket kurulumuna gerek yoktur — Foundation'ın bir parçasıdır. HTTP/2, önbelleğe alma ve çerez yönetimini destekler. curl2code, tüm Swift dönüşümleri için URLSession kodu oluşturur.

URLSession vs Alamofire — hangisini kullanmalıyım?

URLSession yerleşiktir ve çoğu ihtiyacı karşılar — üçüncü taraf bağımlılıklardan kaçınmak için bunu kullanın. Alamofire kolaylık sağlar: zincirlenebilir istek oluşturucular, otomatik yeniden deneme, yanıt doğrulama ve çok parçalı (multipart) yüklemeler. Küçük projeler için URLSession yeterlidir. Benzer yerleşik yaklaşımlar için curl to Kotlin dönüştürücümüze veya curl to Objective-C sayfamıza göz atın.

Swift'te kimlik doğrulama nasıl yönetilir?

Başlığı URLRequest üzerinde ayarlayın: request.setValue("Bearer \(token)", forHTTPHeaderField: "Authorization"). Basic auth için Data("\(user):\(pass)".utf8).base64EncodedString() ile kodlayın. curl2code, -u ve Bearer başlık bayraklarını otomatik olarak Swift koduna dönüştürür.

Swift'te çok parçalı form verisi (multipart form data) nasıl gönderilir?

Çok parçalı gövdeyi manuel olarak oluşturun: bir sınır (boundary) dizesi oluşturun, her alanı/dosyayı CRLF ayırıcılarıyla ekleyin ve Content-Type: multipart/form-data; boundary=... değerini ayarlayın. Daha kolay çok parçalı gönderim için Alamofire'ın upload(multipartFormData:) metodunu kullanın. curl2code, URLSession için -F bayrağı dönüşümünü gerçekleştirir.

Swift'te HTTP hataları nasıl yönetilir?

URLSession, tamamlama bloklarında isteğe bağlı bir Error döndürür — nil olup olmadığını kontrol edin. Yanıtı HTTPURLResponse tipine dönüştürün ve statusCode değerini kontrol edin. async/await (iOS 15+) ile temiz hata yönetimi için bir do/catch bloğu içinde try await URLSession.shared.data(for: request) kullanın.

URLSession ile async/await nasıl kullanılır?

Swift 5.5+ sürümü async/await'i yerel olarak destekler: let (data, response) = try await URLSession.shared.data(for: request). Bu, tamamlama bloğu (closure) yapılarını doğrusal kodla değiştirir. Senkron bağlamlardan çağırmak için Task { } kullanın. Eşzamanlı istekler için async let veya TaskGroup kullanın. Benzer desenler için curl to Dart sayfasına bakın.

Swift URLSession'da zaman aşımı nasıl ayarlanır?

URLSessionConfiguration üzerinde yapılandırın: config.timeoutIntervalForRequest = 30 (istek başına) ve config.timeoutIntervalForResource = 300 (toplam). Veya tekil isteklerde request.timeoutInterval = 30 ayarlayın. Bunlar curl'ün --max-time ve --connect-timeout seçeneklerine karşılık gelir.

URLSession ile proxy nasıl kullanılır?

Proxy'yi URLSessionConfiguration üzerinde ayarlayın: config.connectionProxyDictionary = [kCFProxyHostNameKey: "proxy", kCFProxyPortNumberKey: 8080]. SOCKS proxy'leri için kCFStreamPropertySOCKSProxy anahtarlarını kullanın. URLSession ayrıca macOS/iOS ayarlarında yapılandırılmış sistem genelindeki proxy ayarlarını da dikkate alır.

Swift''te 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 Swift koduna dönüştürün. Üretilen kod request.httpBody = try JSONEncoder().encode(data) kullanır. curl2code, JSON içeriğine sahip -d/--data bayraklarını otomatik olarak algılar ve URLSession kodunda uygun Content-Type başlığını ayarlar.

Swift''te Bearer token yetkilendirmesi nasıl eklenir?

curl2code aracına curl -H "Authorization: Bearer YOUR_TOKEN" URL komutunu iletin; araç, yetkilendirme başlığı içeren URLSession kodunu üretecektir: request.setValue("Bearer YOUR_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.

Swift''te Content-Type başlığı nasıl ayarlanır?

curl2code, curl -H "Content-Type: application/json" URL komutunu uygun başlığa sahip URLSession 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 URLSession API eşlemesine aktarır.

Faydalı Bağlantılar

curl Kılavuzları

curl Komutunu Diğer Dillere Dönüştür