cURL ile HTTP İstekleri Gönderme
Harici API'lere GET ve POST istekleri göndermek için cURL kullanın.
cURL ile HTTP İstekleri Gönderme, CoddyKit'te ücretsiz bir PHP Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, PHP Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. PHP Academy kursu toplamda 4 dersten oluşur.
cURL Nedir?
cURL, URL'lerle veri aktarımı sağlayan bir kütüphanedir. PHP, bunu curl_* işlevleriyle sunar ve böylece cURL, harici API'leri çağırmanın standart yolu olur.
Temel GET İsteği
Bir cURL tanıtıcısı başlatın, seçenekleri ayarlayın, işlemi yürütün ve tanıtıcıyı kapatın.
<?php
$ch = curl_init("https://api.example.com/users");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo $response;CURLOPT_RETURNTRANSFER
Bu seçenek olmadan curl_exec(), yanıtı doğrudan yazdırır. Yanıtı bir değişkende saklamak için seçeneği true olarak ayarlayın.
POST İsteği
Bir POST isteği için CURLOPT_POST ve CURLOPT_POSTFIELDS seçeneklerini ayarlayın.
<?php
$ch = curl_init("https://api.example.com/users");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => json_encode(["name" => "Alice"]),
CURLOPT_HTTPHEADER => ["Content-Type: application/json"],
]);
$response = curl_exec($ch);
curl_close($ch);Başlıkları Ayarlama
Başlık dizelerinden oluşan bir diziyi CURLOPT_HTTPHEADER seçeneğine aktarın.
<?php
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Authorization: Bearer ".$token,
"Accept: application/json",
]);HTTP Durum Kodunu Alma
curl_exec() işlevinden sonra yanıtın durum kodunu curl_getinfo() ile alın.
<?php
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
echo $statusCode; // 200, 404, 500, etc.Hata Yönetimi
Bağlantı hatalarını tespit etmek ve bildirmek için curl_errno() ile curl_error() işlevlerini denetleyin.
<?php
if (curl_errno($ch)) {
echo "cURL error: ".curl_error($ch);
}
curl_close($ch);Zaman Aşımı Seçenekleri
İsteklerin takılıp kalmasını önlemek için bağlantı ve yürütme zaman aşımı sürelerini ayarlayın.
<?php
curl_setopt_array($ch, [
CURLOPT_CONNECTTIMEOUT => 5, // seconds to connect
CURLOPT_TIMEOUT => 15, // max total seconds
]);Yönlendirmeleri İzleme
CURLOPT_FOLLOWLOCATION ile yönlendirmelerin otomatik olarak izlenmesini etkinleştirin.
<?php
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_MAXREDIRS, 5);SSL Doğrulaması
Varsayılan olarak cURL, SSL sertifikalarını doğrular. Doğrulamayı üretim ortamında hiçbir zaman devre dışı bırakmayın; bunu yalnızca kendinden imzalı sertifikalarla yerel geliştirme yaparken kullanın.
<?php
// Development only — NEVER in production!
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);curl_setopt_array()
Birden fazla seçeneği tek bir çağrıda ayarlamak için curl_setopt_array() kullanın; bu, tekrarlanan curl_setopt() çağrılarından daha temizdir.
Özet
cURL, PHP'nin standart HTTP istemcisidir. Her zaman CURLOPT_RETURNTRANSFER seçeneğini ayarlayın, hataları curl_errno ile denetleyin ve tanıtıcıları her zaman curl_close ile kapatın.
Hızlı Kontrol
cURL yanıtını bir değişkene hangi seçenek aktarır?
Sıkça Sorulan Sorular
“cURL ile HTTP İstekleri Gönderme” dersi ücretsiz mi?
Evet — “cURL ile HTTP İstekleri Gönderme” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve PHP Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. PHP Academy kursu toplamda 4 dersten oluşur.
“cURL ile HTTP İstekleri Gönderme” dersinde ne öğreneceğim?
Harici API'lere GET ve POST istekleri göndermek için cURL kullanın. PHP Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
PHP Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te PHP Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.
“cURL ile HTTP İstekleri Gönderme” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu PHP Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her PHP Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- JSON Kodlama ve Kod Açma
- cURL ile HTTP İstekleri Gönderme
- API Yanıtlarını ve Hatalarını İşleme
- Basit Bir API İstemcisi Oluşturma