cURL, API'yi kodlamadan önce denemek ve sorun gidermek için en hızlı araçtır. Doğru bayraklarla hem isteği hem yanıtı ayrıntılı görebilirsiniz.
Temel kalıplar
# GET
curl -sS -H "Authorization: Bearer $API_TOKEN" \
"https://api.ornek-ca.example/v1/orders"
# POST (JSON)
curl -sS -X POST "https://api.ornek-ca.example/v1/orders" \
-H "Authorization: Bearer $API_TOKEN" \
-H "Content-Type: application/json" \
-d @siparis.json
# CSR dosyasını form alanı olarak gönderme
curl -sS -X POST "https://api.ornek-ca.example/v1/orders" \
-H "Authorization: Bearer $API_TOKEN" \
--data-urlencode "csr@istek.csr"
Adres örnek amaçlıdır. Gerçek uç noktaları sağlayıcı belgesinden alın.
Faydalı bayraklar
-i: Yanıt başlıklarını da gösterir.-v: TLS el sıkışması ve istek ayrıntılarını gösterir; bağlantı sorunlarında çok işe yarar.-w "%{http_code}\n" -o /dev/null: Yalnızca durum kodunu yazdırır.--fail-with-body: 4xx/5xx durumlarında hata kodu döndürür ama gövdeyi de gösterir.--max-time 30: Zaman aşımı koyar.
Çıktıyı işlemek
curl -sS -H "Authorization: Bearer $API_TOKEN" \
"https://api.ornek-ca.example/v1/orders" | jq '.data[] | {domain, status}'
Sık hatalar
- -k / --insecure kullanmak: TLS doğrulamasını kapatır; sorunu gizler. Bunun yerine
--cacertile doğru CA paketini verin. - Tırnak sorunları: JSON'u komut satırında yazmak yerine dosyadan (
-d @dosya.json) gönderin. - Anahtarı kabuk geçmişine yazmak: Değeri ortam değişkeniyle verin ve geçmişe kaydedilmemesine dikkat edin.
Sunucunun kendi sertifikasını görmek için curl -vI https://ornek.com.tr da kullanışlıdır; tarayıcıdan bakmak isterseniz SSL denetleyiciye uğrayın. Hatalarda SSL sorun giderici rehberliği sunar.
Betik içinde kullanmak
Bir kabuk betiğinde çıkış kodlarını kontrol edin ve başarısız çağrıda betiği durdurun. Uzun süren yenileme işlerinde set -euo pipefail kullanmak hataların sessizce geçmesini önler. Yanıtı bir dosyaya yazıp sonra ayrıştırmak, hata ayıklamayı kolaylaştırır.