Sobes.tech
Intern

HTTP isteklerinin hangi türleri vardır?

sobes.tech yapay zeka

AI'dan gelen yanıt

Temel HTTP isteği türleri: GET, POST, PUT, DELETE, PATCH, HEAD, OPTIONS, TRACE, CONNECT.

En yaygın olanların açıklaması:

  • GET: Belirtilen kaynağın görünümünü talep eder. Bu yöntemle yapılan istekler sadece veri almalıdır.
  • POST: Belirli bir kaynağa işlenmek üzere veri gönderir. Sık görülen sonuçlar durum değişikliği veya sunucuda yan etkilerdir.
  • PUT: Hedef kaynağın tüm mevcut gösterimlerini istek gövdesindeki verilerle değiştirir.
  • DELETE: Belirtilen kaynağı siler.
  • PATCH: Kaynağa kısmi değişiklikler uygular.
  • HEAD: GET gibi başlıkları talep eder, ancak yanıt gövdesi olmadan. Meta verileri almak için kullanılır.
  • OPTIONS: Hedef kaynak için iletişim parametrelerini açıklar.
  • CONNECT: Talep edilen bağlantıyı şeffaf bir TCP/IP proxy'sine dönüştürür.
  • TRACE: Hedef kaynağa giden yolda geri bildirim testi yapar.

GET ve POST arasındaki farklar:

Özellik GET POST
Amaç Veri almak İşlem için veri göndermek
Veri iletimi URL parametreleri (Sorgu Dizesi) aracılığıyla İstek gövdesi aracılığıyla
Güvenlik İdempotent (tekrarlanan istekler durumu değiştirmez) İdempotent olmayan
Veri görünürlüğü URL'de görünür, tarayıcı geçmişinde ve sunucu loglarında saklanır URL'de görünmez, geçmişte saklanmaz
Veri boyutu URL uzunluğu ile sınırlıdır Sınırsızdır (veya çok büyük olabilir)
Önbellekleme Önbelleğe alınabilir Temel araçlarla önbelleğe alınmaz
Yer imleri GET parametreleriyle sayfa yer imlerine eklenebilir Mümkün değil (normal form gönderme yöntemleriyle)

PHP'de GET kullanımı örneği:

<?php
// URL'den 'id' parametresini al
$userId = $_GET['id'];
echo "Kullanıcı ID'si: " . htmlspecialchars($userId);
?>

PHP'de POST kullanımı örneği (form verilerini işleme):

<?php
// POST yöntemiyle istek olup olmadığını kontrol et
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    // İstek gövdesinden verileri al
    $username = $_POST['username'];
    $password = $_POST['password'];
    // Verileri işle (örneğin, veritabanına kaydet)
    echo "Kullanıcı adı: " . htmlspecialchars($username) . "<br>";
    echo "Şifre alındı.";
}
?>