logo
GeekFormat

cURL'den Koda Dönüştürücü

cURL komutu girişi

Bir cURL komutu yapıştırın, URL'yi, yöntemi, üstbilgileri ve istek gövdesini otomatik olarak ayrıştırın ve JavaScript fetch, Axios, Node fetch, Python requests/httpx, Go net/http, PHP cURL, Java OkHttp, C# HttpClient, PowerShell Invoke-RestMethod, wget ile çalıştırılabilir kod oluşturun.

Ayrıştırılmış istek

https://api.example.com/items1 üstbilgiGövde: 15 karaktercurlToCode.flag.followRedirects

Oluşturulan kod

curlToCode.target.fetch

curl komutunu yapıştırın, saniyeler içinde 11 dilde çalıştırılabilir HTTP istek kodu elde edin.

İlgili Öneriler

Kullanım senaryoları

  • Chrome DevTools Network panelinde isteğe sağ tıklayıp「Copy as cURL」seçtikten sonra, bu araca yapıştırarak doğrudan projenizin kullandığı dilin koduna dönüştürün, elle istek yazmaktan 10 kat daha hızlı
  • Üçüncü taraf API'lerini entegre ederken dokümantasyonda curl örneği verildiğinde, hızla Python requests/Java OkHttp/C# HttpClient koduna dönüştürüp projenize gömün
  • Üretim ortamı arayüzlerini hata ayıklarken yakalama araçlarından (Charles/mitmproxy/Wireshark) curl komutunu kopyalayın, birim test koduna dönüştürerek doğrudan doğrulayın
  • API dokümantasyonu yazarken birden fazla dil örneği arasında hızla geçiş yapın, farklı teknoloji yığınlarındaki okuyuculara hazır çalıştırılabilir örnek kod sağlayın
  • Çevrimiçi istek sorunlarını giderirken, sorunu curl ile tekrarladıktan sonra kod biçimine dönüştürüp iş arkadaşlarınıza gönderin veya Issue açın, başkalarının doğrudan tekrarlamasını kolaylaştırın
  • Diller arası geliştirme yaparken (örneğin Python'dan Go projesine geçerken), mevcut curl isteklerini hızla yeni dilin HTTP istemci çağrı koduna dönüştürün, dokümantasyon arama süresinden tasarruf edin
  • Shell betiklerinde curl komutlarını Windows operasyon iş arkadaşlarınız için PowerShell Invoke-RestMethod'a dönüştürün veya tam tersi
  • HTTP protokolünü öğrenin: Aynı isteğin farklı dillerdeki uygulamalarını karşılaştırarak, her HTTP istemci kütüphanesinin API farklılıklarını anlayın
  • curl -X POST -d 'json' komutunu doğru Content-Type ve JSON serileştirme ile koda hızla dönüştürün, elle string birleştirme hatalarından kaçının
  • CI/CD betiklerinde API çağrısı gerektiğinde, yerel olarak hata ayıkladığınız curl komutunu karşılık gelen betik dili koduna dönüştürüp işlem hattına gömün

Özellikler

  • 11 hedef dil/kütüphane: Frontend (JS fetch/Axios), Node.js (node-fetch), Python (requests/httpx), Go (net/http), PHP (cURL), Java (OkHttp), C# (HttpClient), PowerShell (Invoke-RestMethod), komut satırı (wget) dahil ana teknoloji yığınlarını tek noktadan kapsar
  • Akıllı curl komut ayrıştırma: URL, HTTP metodu, istek başlıkları, istek gövdesini otomatik tanır, tek/çift tırnak, ters eğik çizgi kaçışları, çok satırlı komut birleştirmeyi (ters eğik çizgi ile satır sonu) destekler
  • Yaygın curl parametrelerinin tam desteği: -X/--request metod belirtme, -H/--header istek başlığı, -d/--data/-F form/JSON istek gövdesi, -u/--user Basic auth, -A/--user-agent UA, -b/--cookie Cookie, -e/--referer Referer, -L/--location yönlendirme takibi, --compressed otomatik sıkıştırma açma, -k/--insecure sertifika doğrulamasını atlama, -I/--head HEAD isteği
  • JSON istek gövdesi akıllı tanıma: Content-Type application/json olarak algılandığında otomatik olarak JSON.parse/JSON.stringify/requests(json=)/json= serileştirmesi kullanır, üretilen kod string yerine doğrudan nesne kullanır, dil alışkanlıklarına daha uygundur
  • Basic auth otomatik dönüşüm: -u user:pass algılandığında otomatik olarak Authorization: Basic <base64> istek başlığı üretir, hedef dilde yerel auth mekanizması kullanılır (Python auth=, OkHttp credentials, C# credentials vb.)
  • Güvenlik bayrağı rozet uyarıları: --compressed/-L/-k/-u gibi parametreleri otomatik algılar, ayrıştırma sonuçlarında rozetlerle belirgin şekilde gösterir
  • İstek metodu manuel olarak değiştirilebilir: curl metodu otomatik ayrıştırıldıktan sonra, kullanıcının açılır menüden manuel olarak metodu değiştirmesine (GET/POST/PUT vb. 7 tür) izin verir, karşılık gelen kodu anında görüntüler
  • String kaçış güvenliği: Her dil için kod üretirken dilin yerel string sabiti kullanılır (Python üçlü tırnak/ters eğik çizgi kaçışı, Go ters tırnak ham string, C# @"", PHP tek tırnak, Java çift tırnak kaçışı), kod çalıştırıldığında sözdizimi hatası oluşmasını önler
  • Ayrıştırma hatası uyarısı: Geçersiz curl komutu girildiğinde (URL eksikliği, curl ile başlamama, POST için body yokluğu vb.) turuncu uyarı rozetiyle belirli sorun belirtilir
  • 3 örnek tek tıkla yüklenir: GET+Token auth, POST+JSON, Basic auth+yönlendirme takibi dahil 3 tipik örnek sunulur, aracın yeteneklerini hızla görmenizi sağlar
  • Tek tıkla girdiyi temizle: Clear düğmesi hızla sıfırlar, yeni komut yapıştırdığınızda kalıntı kalmaz
  • Tamamen yerel işleme: curl komutları ve istek içeriği tamamen tarayıcıda yerel olarak ayrıştırılır ve dönüştürülür, hiçbir sunucuya yüklenmez, hassas Token/şifre sızdırılmaz
  • Tek tıkla kod kopyalama: Kod üretildikten sonra Copy düğmesine tıklayarak panoya kopyalayın, doğrudan projenize yapıştırıp çalıştırın
  • HTTPS güvensiz mod uyumu: -k/--insecure parametresi Node/Go/Python/PHP/C#/PowerShell gibi dillerde karşılık gelen TLS sertifika doğrulamasını atlama yapılandırması üretir (wget --no-check-certificate kullanır, C# ServicePointManager ipucu bırakır, Node NODE_TLS_REJECT_UNAUTHORIZED ayarlar)

Nasıl Kullanılır

  1. curl komutunu edinin: Tarayıcı DevTools Network panelinde isteğe sağ tıklayın → Copy → Copy as cURL (bash); veya Postman/Charles/mitmproxy gibi yakalama araçlarından curl dışa aktarın; veya kendi curl komutunuzu yazın
  2. Giriş kutusuna yapıştırın: curl komutunu en üstteki giriş alanına yapıştırın, tek satırlı/çok satırlı (ters eğik çizgi ile devam eden) komutları destekler, satır sonları otomatik olarak temizlenir
  3. Örnek düğmesine tıklayarak referans alın: Biçimi bilmiyorsanız「Örnek 1/2/3」düğmelerine tıklayarak önceden ayarlanmış curl komutlarını yükleyip efekti görün
  4. Ayrıştırma sonuçlarını görüntüleyin: Ayrıştırma sonucu alanında URL, Header sayısı, Body karakter sayısı ve sıkıştırma/yönlendirme/sertifika atlama/Basic auth gibi rozetler gösterilir, sorun varsa turuncu uyarı görüntülenir
  5. Gerekirse metodu ayarlayın: Otomatik tanınan metod yanlışsa (örneğin curl'e -X POST eklenmemiş ama POST olması gerekiyorsa), açılır menüden HTTP metodunu manuel olarak değiştirin
  6. Hedef dili seçin: Hedef kod alanında karşılık gelen dil düğmesine tıklayın (fetch/Axios/Python requests/Go/PHP/Java/C#/PowerShell/wget vb.)
  7. Kodu kopyalayın:「Kodu Kopyala」düğmesine tıklayın, projenize/terminal'inize yapıştırıp çalıştırın

Sık Sorulan Sorular

cURL'den koda dönüştürücü ne işe yarar? Neden doğrudan curl komutu kullanmıyorsunuz?

Kodda doğrudan curl komutunu çağırmak (shell_exec, subprocess.run gibi) alt süreç başlatmayı gerektirir, hem güvensizdir hem de hataları işlemek, yanıt başlıklarını almak, tür dönüşümü yapmak zordur. Üretim kodu programlama dilinin yerel HTTP istemcisini kullanmalıdır (Python requests, Java OkHttp, JS fetch vb.). curl-to-code'un değeri, DevTools/yakalama araçlarından kopyaladığınız curl komutunu otomatik olarak karşılık gelen dilin HTTP istemci koduna çevirmesi, API dokümantasyonu arama, manuel tırnak kaçırma, JSON/auth işleme gibi mekanik işçilikten kurtarması, kopyalayıp yapıştırarak çalıştırmanızdır.

Hangi hedef diller/kütüphaneler destekleniyor?

Şu anda 11 hedef desteklenmektedir: JavaScript fetch (tarayıcı yerel), Axios (Node/tarayıcı ortak HTTP kütüphanesi), Node.js node-fetch, Python requests (Python'un en popüler HTTP kütüphanesi), Python httpx (yeni nesil HTTP/2 ve async destekli HTTP kütüphanesi), Go net/http (Go standart kütüphanesi), PHP cURL uzantısı, Java OkHttp (Android/arka uç ortak yüksek performanslı kütüphane), C# HttpClient (.NET standart HTTP istemcisi), PowerShell Invoke-RestMethod (Windows otomasyon betikleri için yaygın), wget (komut satırı indirme aracı). Listede olmayan bir dile ihtiyacınız varsa (Ruby, Rust reqwest, Dart http, Swift URLSession vb.), sayfadan geri bildirimde bulunabilirsiniz, talebe göre ekleriz.

Chrome DevTools'tan curl komutu nasıl kopyalanır?

Adımlar: 1. Chrome/Edge'i açın, F12 tuşuna basarak DevTools'u açın; 2. Network paneline geçin; 3. Sayfayı yenileyin veya hedef isteği tetikleyin; 4. İstek listesinde hedef isteği bulun (XHR/JS ile filtreleyebilirsiniz); 5. İsteğe sağ tıklayın → Copy →「Copy as cURL (bash)」seçin (bash sürümü önerilir, uyumluluk en iyisidir); 6. Bu aracın giriş kutusuna yapıştırın. Copy as fetch'i seçmeyin (bu JS kodudur, curl değildir). Firefox/Safari'de işlem benzerdir, hepsinde Copy as cURL seçeneği vardır.

curl komutunun tırnak işleme çok zahmetli, hangi biçimler destekleniyor?

Araç bash stili tek tırnak, çift tırnak, ters eğik çizgi kaçışlarını destekler; Windows cmd çift tırnak+^kaçışını; PowerShell ters tırnak kaçışını temelde tanır. Bash biçimini kullanmanız önerilir (tek tırnakla sarma). Çok satırlı komutlar (ters eğik çizgi\ ile devam eden) da yapıştırma için desteklenir, araç satır sonlarını ve devam karakterlerini otomatik olarak temizler. curl komutunuz özellikle karmaşıksa (shell değişkenleri, komut değiştirme $(...), boru | vb. içeriyorsa), önce terminalde echo komutu yürüterek açılmış gerçek curl'ü yazdırıp kopyalamanız veya önce manuel olarak basitleştirmeniz (değişkenleri gerçek değerlerle değiştirmeniz) önerilir.

curl'de -d ile JSON gönderdiğimde neden sunucu bozuk/400 alıyor?

Bu en yaygın curl hatalarından biridir. curl'ün -d/--data seçeneğinin varsayılan Content-Type'ı application/x-www-form-urlencoded'dur (form biçimi), application/json değildir. Doğrudan curl -d '{"name":"demo"}' url yaparsanız, sunucu form olarak ayrıştırır (ayrıştırma başarısız olur veya boş veri alır). JSON'u doğru göndermek için açıkça -H "Content-Type: application/json" başlığı eklenmesi gerekir. Bu araç body algıladığında ancak Content-Type olmadığında turuncu uyarı ile bildirir.

Üretilen kod doğrudan kopyalanıp çalıştırılabilir mi? Hangi bağımlılıkları yüklemem gerekir?

Çoğu dilin kodu standart kütüphane ile doğrudan çalıştırılabilir (fetch/Go net/http/PHP cURL/C# HttpClient/PowerShell/wget hepsi yerleşiktir), ek yükleme gerektirmez. Diğerleri üçüncü taraf kütüphane gerektirir: Axios (npm install axios gerekir), node-fetch (npm install node-fetch gerekir, Node 18+ yerleşik fetch ile gelir yükleme gerekmez), Python requests (pip install requests), Python httpx (pip install httpx), Java OkHttp (Maven/Gradle ile okhttp3 bağımlılığını eklemek gerekir). Kod varsayılan olarak yanıt durum kodunu ve metnini yazdırır, işleme mantığını ihtiyaca göre değiştirebilirsiniz.

multipart/form-data dosya yüklemeyi (-F parametresi) destekliyor mu?

Temel destek: -F parametresi istek gövdesi (body) olarak tanınır, ancak üretilen kod şu anda @file'ı gerçek dosya yükleme yerine gerçek dize olarak işler. Dosya yükleme yerel dosya içeriğini okumayı gerektirir, her dilin işleme biçimi büyük farklılık gösterir (JS FormData/FormData.append kullanır, Python files= parametresi kullanır, Go multipart.Writer kullanır). Aracın ürettiği kodu temel alarak karşılık gelen kütüphanenin dosya yükleme dokümantasyonuna başvurup ayarlama yapmanız önerilir. Sonraki sürümlerde multipart desteği güçlendirilecektir.

curl komutlarımı ve hassas verilerimi yükler mi?

Kesinlikle hayır. Tüm ayrıştırma ve kod üretme süreci %100 tarayıcınızda yerel olarak tamamlanır (saf ön uç JavaScript), curl komutları, istek başlıklarındaki Token/Cookie/şifreler, istek gövdesindeki veriler hiçbir sunucuya gönderilmez. Bu aracı çevrimdışı olarak kullanabilirsiniz, hassas bilgi sızıntısı endişesi yoktur.

-k/--insecure sertifika doğrulamasını atlama her dil kodunda nasıl işlenir?

-k parametresi algılandığında, bu araç her hedef dil için karşılık gelen sertifika doğrulamasını atlama yapılandırması üretir: Python requests/httpx verify=False kullanır; Node.js process.env.NODE_TLS_REJECT_UNAUTHORIZED='0' ayarlar; Go özel tls.Config{InsecureSkipVerify: true} oluşturur; PHP CURLOPT_SSL_VERIFYPEER=false ve CURLOPT_SSL_VERIFYHOST=0 ayarlar; Java OkHttp için özel TrustManager gerekir (kod uzun olduğundan yorumla ipucu verilir); C# özel ServerCertificateCustomValidationCallback tanımlayabilir; PowerShell -SkipCertificateCheck kullanır (PS6+); wget --no-check-certificate kullanır; tarayıcı fetch sertifikayı atlayamaz (tarayıcı güvenlik kısıtlaması, kodda yorumla açıklanır). Not: Bu yapılandırmalar yalnızca yerel geliştirme testi içindir, üretim ortamında kesinlikle sertifika doğrulamasını devre dışı bırakmayın.

Üretilen Go kodu neden yönlendirmeyi takip etmiyor? -L eklendiğinde takip etmesi gerekmez mi?

Go'nun net/http varsayılan davranışı yönlendirmeyi takip etmemektir (curl'ün varsayılan davranışıyla tutarlı, curl'ün açıkça -L eklemesi gerekir). Araç -L parametresini algıladığında boş client üretir (http.Client{} varsayılan CheckRedirect nil'dir, yani 10 yönlendirmeye kadar takip eder); -L eklenmediğinde CheckRedirect http.ErrUseLastResponse döndüren client üretir, yönlendirmeyi takip etmez (curl'ün -L olmadan davranışıyla tutarlı). Go'nun her zaman yönlendirmeyi takip etmesini istiyorsanız, kodda doğrudan http.DefaultClient kullanabilir veya özel Client{Timeout: ...} tanımlayabilirsiniz.

Giriş gerektiren/Cookie'li istekler nasıl işlenir?

İki yol vardır:①Giriş yapmış tarayıcının DevTools'undan doğrudan curl kopyalayın (önerilen): İsteğe sağ tıklayın→Copy as cURL, böylece cookie/header otomatik olarak dahil edilir, yapıştırıp dönüştürdükten sonra doğrudan çalıştırabilirsiniz;②curl'de -b/--cookie ile manuel olarak Cookie değeri belirtin (-b 'sessionid=abc; token=xyz'), -u/--user ile Basic auth belirtin, -H "Authorization: Bearer xxx" ile Bearer Token belirtin, araç bu başlıkları aynen dönüştürür. Not: Tarayıcıdan kopyalanan Cookie'nin geçerlilik süresi vardır, birkaç saat sonra süresi dolabilir ve yeniden kopyalamanız gerekebilir.

Python requests'te JSON istek gövdesi neden data= yerine json= parametresi kullanıyor?

Python requests kütüphanesinin data parametresi dict'i application/x-www-form-urlencoded olarak kodlar, string'i aynen gönderir, json parametresi ise dict/list'i otomatik olarak JSON string'ine serileştirir ve Content-Type: application/json başlığını otomatik olarak ayarlar (manuel olarak ayarlamadıysanız). Bu araç Content-Type'ın application/json içerdiğini ve body'nin geçerli JSON olduğunu algıladığında, JSON'u otomatik olarak Python dict olarak ayrıştırır ve json= parametresi kullanır, böylece kod daha temiz olur, manuel json.dumps gerekmez, Content-Type başlığını unutmazsınız. JSON olmayan body (form/XML/düz metin) data= parametresiyle ham string olarak gönderilir.

curl komutu çok uzun ve çok başlığı var, üretilen kod tüm başlıkları taşıyorsa ne yapmalıyım?

DevTools'tan kopyalanan curl komutu tarayıcının otomatik olarak eklediği çok sayıda başlık içerir (Host, Connection, Accept, Accept-Encoding, Accept-Language, Sec-Fetch-*, sec-ch-ua, Upgrade-Insecure-Requests vb.), bu başlıkların çoğu kodda açıkça ayarlanmasına gerek yoktur (HTTP istemcisi Accept-Encoding, Connection, Host, Content-Length vb. gibi mantıklı varsayılan değerleri otomatik olarak ekler). Üretilen kodu kopyaladıktan sonra, gereksiz başlıkları manuel olarak silmeniz önerilir, en azından şunları koruyun: Content-Type, Authorization, Cookie (gerekliyse), özel iş başlıkları. Fazla başlıklar sadece kodu çirkinleştirmekle kalmaz, davranış anormalliklerine de neden olabilir (örneğin Accept-Encoding'i açıkça ayarlamak ama istemcinin otomatik olarak sıkıştırma açmaması).

HTTPS proxy (-x/--proxy) parametresini destekliyor mu?

Şu anda HTTP proxy (-x/--proxy) parametresi otomatik olarak dönüştürülmüyor. Proxy yapılandırması her dilde büyük farklılık gösterir (JS fetch'in yerel proxy desteği yoktur Agent gerekir, Python proxies= parametresi kullanır, Go Transport.Proxy aracılığıyla, PHP CURLOPT_PROXY kullanır, C# WebProxy kullanır, Java OkHttpClient.Builder().proxy() kullanır). Proxy başlıkları (proxy'nin kendi kimlik doğrulaması) da ayrı olarak işlenmelidir. Geçerli sürümde proxy ile ilgili parametreler yok sayılır, üretilen kodu temel alarak manuel olarak proxy yapılandırması ekleyebilirsiniz, sonraki sürümlerde proxy desteği güçlendirilecektir.

curlconverter.com gibi çevrimiçi araçlarla karşılaştırıldığında ne farkı var?

curlconverter.com gibi tanınmış araçlarla karşılaştırıldığında, GeekFormat'ın curl-to-code avantajları:①Tamamen yerel işleme (curlconverter'ın işleme mantığı sunucu tarafında veya istemci tarafındadır), veri yüklemez daha güvenlidir;②Türkçe arayüz ve Türkçe açıklamalar, yerel geliştiricilere dostça;③Üretilen kod gerçek üretim kullanımına daha uygundur (örneğin Python requests JSON body için data= yerine json= parametresi kullanır, Go varsayılan davranışı curl ile hizalı, C# Content-Type'ı doğru işler application/json'u sabit kodlamaz);④Eşlik eden derinlemesine dokümantasyon, SSS, karşılaştırma tabloları, sorun giderme, sadece kod üretmekle kalmaz neden böyle yazıldığını anlamanıza yardımcı olur;⑤Ücretsiz reklamsız, kayıt veya giriş gerekmez, herhangi bir ağ isteği olmadan kullanılabilir.

术语表

cURL / curl
Açık kaynaklı komut satırı aracı ve libcurl kütüphanesi, komut satırında URL üzerinden HTTP/HTTPS/FTP gibi protokol istekleri göndermek için kullanılır, geliştiricilerin API hata ayıklaması için en yaygın kullanılan araçtır.
HTTP metodu
HTTP istek eylemi, yaygın olanlar GET (okuma), POST (oluşturma), PUT (tüm güncelleme), PATCH (kısmi güncelleme), DELETE (silme), HEAD (başlık alma), OPTIONS (sunucu yeteneklerini sorgulama).
İstek başlığı (Header)
HTTP isteğindeki meta veri anahtar-değer çiftleri, Content-Type, Authorization, User-Agent, Cookie, Accept vb., curl'de -H/--header ile belirtilir.
İstek gövdesi (Body)
HTTP isteğinin veri bölümü, POST/PUT/PATCH için yaygındır, curl'de -d/--data/--data-binary/-F ile belirtilir, yaygın biçimler JSON, form-urlencoded, multipart/form-data.
Content-Type
İstek/yanıt başlığı, body'nin medya türünü belirtir. application/json JSON'u, application/x-www-form-urlencoded URL kodlu formu, multipart/form-data dosya yükleme formunu belirtir.
Basic auth
HTTP temel kimlik doğrulaması, Authorization: Basic base64(user:pass) başlığı aracılığıyla kullanıcı adı parola iletir, curl'de -u user:pass ile belirtilir.
Bearer Token
Belirteç tabanlı kimlik doğrulama yöntemi, Authorization: Bearer <token> başlığı aracılığıyla iletilir, JWT/OAuth2'de yaygın olarak kullanılır.
User-Agent
İstemci türünü (tarayıcı/tarayıcı bot/betik) belirten istek başlığı, curl varsayılan olarak "curl/sürüm" gönderir, birçok web sitesi tarayıcı olmayan UA'ları engeller, yaygın olarak -A ile belirtilir.
Cookie
Sunucunun Set-Cookie aracılığıyla gönderdiği, tarayıcının sonraki isteklerde Cookie başlığı aracılığıyla geri gönderdiği anahtar-değer çiftleri, oturum sürdürme için kullanılır. curl -b Cookie gönderir, -c Cookie'yi kaydeder.
Referer
Mevcut isteğin kaynak sayfa URL'sini belirten istek başlığı, bazı hotlink koruması/CSRF doğrulaması kontrol eder. curl -e ile ayarlanır.
Yönlendirme (3xx)
Sunucu 301/302/303/307/308 durum kodu döndürdüğünde tarayıcıya yeni URL'ye atlamasını söyler. curl varsayılan olarak takip etmez, -L/--location ile takip eder.
--compressed
curl seçeneği, otomatik olarak Accept-Encoding: deflate, gzip başlığı ekler ve yanıtı otomatik olarak sıkıştırmasını açar. Ayarlanmazsa yanıt sıkıştırılmış bozuk veriler olabilir.
-k/--insecure
curl seçeneği, HTTPS sertifika doğrulamasını atlar, yalnızca kendinden imzalı sertifika test ortamları için kullanılır, üretim ortamında kullanılması yasaktır.
fetch API
Tarayıcının yerel JavaScript HTTP istek API'si, Promise döndürür, modern tarayıcılar tarafından desteklenir.
Axios
Promise tabanlı popüler HTTP istemci kütüphanesi, tarayıcı ve Node.js için ortaktır, otomatik JSON serileştirme, kesiciler, zaman aşımı iptali.
OkHttp
Square tarafından üretilen Java/Android HTTP istemci kütüphanesi, yüksek performans, HTTP/2 desteği, bağlantı havuzu, şeffaf GZIP.
HttpClient (.NET)
C#/.NET için önerilen HTTP istemci, System.Net.Http ad alanı, .NET Core/.NET 5+ standart API.
Invoke-RestMethod
PowerShell 3.0+ yerleşik HTTP istek cmdlet'i, JSON/XML yanıtını otomatik olarak PowerShell nesnesi olarak ayrıştırır.

cURL yaygın seçenekleri ve 11 hedef dil karşılaştırma tablosu

Content-Type yaygın değerleri ve curl kullanımı

Chrome DevTools Copy as cURL üç biçim karşılaştırması

Troubleshooting