Guzzle (HTTP İstemcisi)
artiframe add guzzle komutu, PHP'de dış API'lere (REST, SOAP, GraphQL) istek atmayı inanılmaz derecede kolaylaştıran guzzlehttp/guzzle paketini kurar.
Native cURL fonksiyonlarının o uzun ve kafa karıştırıcı yapısından sizi kurtarır, modern ve akıcı bir yaklaşım sunar.
💡 Bilgilendirme: Direkt Kullanım
ArtiFrame, bu paket için
ArtiFrame, bu paket için
src/Service klasörüne özel bir entegrasyon (Wrapper/Stub) sınıfı kopyalamaz. Kurulum yalnızca Composer üzerinden paketi projeye dahil eder.
Aşağıdaki kodlar, paketin kendi orijinal işleyişini gösteren basit kullanım örnekleridir. Daha fazlası için Guzzle Dokümantasyonunu inceleyebilirsiniz.
Kurulum
terminal
$ artiframe add guzzle
Kullanım Örneği
ApiController.php
<?php
use GuzzleHttp\Client;
use GuzzleHttp\Exception\RequestException;
// 1. İstemciyi (Client) Oluştur
$client = new Client([
'base_uri' => 'https://jsonplaceholder.typicode.com/',
'timeout' => 5.0, // 5 saniye içinde cevap gelmezse Exception fırlatır
]);
try {
// 2. GET İsteği Atmak
$response = $client->request('GET', 'users');
// HTTP Status Code (Örn: 200)
echo "Durum Kodu: " . $response->getStatusCode() . "<br>";
// JSON yanıtı Array'e çevirmek
$users = json_decode($response->getBody(), true);
echo "İlk Kullanıcı: " . $users[0]['name'] . "<hr>";
// 3. POST İsteği (JSON Body ve Header Göndermek)
$postResponse = $client->request('POST', 'posts', [
'headers' => [
'Authorization' => 'Bearer SIZIN_API_TOKENINIZ',
'Accept' => 'application/json'
],
'json' => [
'title' => 'Guzzle Harika!',
'body' => 'ArtiFrame üzerinden test ediliyor.',
'userId' => 1
]
]);
echo "POST Başarılı! Dönen Cevap: <br>";
echo $postResponse->getBody();
} catch (RequestException $e) {
// Sunucu 404 veya 500 dönerse buraya düşer
echo "API Hatası: " . $e->getMessage();
}