cURL’dan koda

Bir curl komutu yapıştırın, gönderdiği isteği denetleyin, ardından yedi dilde kod olarak kopyalayın.

Ayrıştırma ve kod üretimi bu tarayıcı sekmesinde yapılır. Hiçbir şey yüklenmez, saklanmaz veya gönderilmez — bize bile.

İstek özetini ve kodu görmek için yukarıya bir curl komutu yapıştırın.

Nasıl kullanılır

  1. Bir curl komutu yapıştırın — DevTools’tan (Copy as cURL), API belgelerinden ya da bir sohbetteki. Kod, siz yazdıkça belirir.
  2. Önce özet satırını okuyun: yöntem, URL, üstbilgi sayısı ve gövde boyutu. Özet doğruysa alttaki kod da doğrudur.
  3. Hedef dili seçin; kod ve indirme dosyasının adı komutunuza dokunmadan değişir.
  4. Uyarılar, kodun yansıtmadığı her şeye işaret eder — vekil sunucular, yönlendirmeler, kabuk değişkenleri. Hatalar ise yarım bir istek göstermek yerine kod üretimini durdurur.
  5. Sıfırla girdiyi temizler ve Python’a döndürür; sayfayı yeniden yüklemek de aynısını yapar.

Örnek

Komut

curl -X POST 'https://httpbin.org/anything?from=en' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer demo-token' \
  -d '{"ad": "Zeynep", "sehir": "İstanbul"}'

Python

import requests

url = "https://httpbin.org/anything?from=en"
headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer demo-token",
}
data = "{\"ad\": \"Zeynep\", \"sehir\": \"İstanbul\"}".encode("utf-8")
response = requests.request("POST", url, headers=headers, data=data)
print(response.status_code)
print(response.text)

Yukarıdaki özet ve kod o komuttan üretilir — bu araç httpbin’i asla aramaz. Desteklenen alt küme: yöntem, URL, üstbilgiler, gövde, Basic/Bearer kimlik doğrulama ve zaman aşımı.

Kurallar, sınırlar ve bilinen sorunlar

  • Dosya yüklemesi yok: -F, -T ve @file girdileri reddedilir; böylece sessizce bir dosyayı düşüren kod asla almazsınız.
  • Kabuk çalıştırma yok: değişkenler, komut eşlemesi, borular ve birden çok komut genişletilmez; $TOKEN bir uyarıyla birlikte aynen kalır.
  • Komut başına tek URL: fazladan URL’ler bir uyarıyla yoksayılır, döngüye çevrilmez.
  • Taşıma seçenekleri yeniden üretilmez: -L, -k, vekil sunucular, istemci sertifikaları, HTTP sürümleri, yeniden denemeler ve sıkıştırma yalnızca bir uyarı üretir. Oluşturulan kod, istemcisinin varsayılanlarını kullanır.
  • Örtülü curl varsayılanı yok: User-Agent: curl/… ve Accept: */* eklenmez; bunları -A / -H ile siz belirtin.
  • Yalnızca POSIX tırnaklama: tek tırnak, çift tırnak, $'...' ve ters bölü ile satır devamı; Windows CMD kaçışı ayrıştırılmaz.
  • Yinelenen üstbilgiler Go, PHP, Java, C# ve Ruby’de korunur; Python ve JavaScript sözlükleri bunları ", " ile birleştirir.
  • Gövdeli bir GET/HEAD isteği, bir uyarıyla birlikte yazıldığı gibi üretilir — fetch bunu reddeder.
  • Geçmiş veya kalıcılık yok: yeniden yükleme her şeyi temizler; paylaş düğmesi sayfa bağlantısını paylaşır, asla komutunuzu değil.
  • Bu araç yalnızca dönüştürür; isteği asla göndermez. Yanıtı da görmek istiyorsanız API istemcisini kullanın.

Bir komutu dönüştürdükten sonra işinize yarar.