CodeBlanks Logo Icon CodeBlanks

Proje: REST API

PHP kursu · İleri seviye · Ders 55/92

5 derslik REST API projesine genel bakış: JSON, PDO ve routing ile görev API'si.

Proje: REST API

Bu beş derslik projede bir REST API yapacaksın. Her derste bir parça ekleyecek, son derste çalışan bir görev API'sini tamamlayacaksın.

Önceki gruplardan PDO sorgularını, sınıf tasarımını ve süper globalleri kullanacaksın. Proje boyunca bir Router sınıfı tasarlayacaksın: gelen isteği yöntem ve yola göre doğru işleyiciye yönlendiren bir yapı. Ardından addRoute, dispatch yöntemlerini ve JsonResponse adlı yanıt sınıfını ekleyeceksin.

Proje yol haritası

Proje beş dersten oluşuyor. İkinci derste addRoute ile rota kaydedeceksin; $_SERVER['REQUEST_METHOD'] ve $_SERVER['PATH_INFO'] ile gelen isteği okuyacaksın. Üçüncü derste dispatch yöntemiyle eşleşen rotayı bulup işleyiciyi çağıracaksın.

Dördüncü derste JsonResponse sınıfı ile durum kodu, başlık ve yapısal veri yanıtını birlikte göndereceksin. Son derste handleGet, handlePost, handlePut ve handleDelete işleyicilerini yazıp tüm parçaları birleştireceksin.

Uygulama Router sınıfını tanımla

Bu projenin ilk parçasını yaz. Router adında bir sınıf tanımla. İçine public array $routes = []; property'sini ekle. Sonra $router = new Router(); ile örnek oluştur ve echo count($router->routes); ile rota sayısını yazdır.

Örnek çözümü göster
class Router { ... } ile sınıfı tanımla. İçine public array $routes = []; ekle. Sonra $router = new Router(); ile örnek oluştur ve echo count($router->routes); ile yazdır.
Örnek çözüm:
<?php
// REST API projesi için Router iskeleti

class Router {
    public array $routes = [];
}

$router = new Router();
echo count($router->routes);

Kendini test et

  1. Router sınıfı bu projede ne işe yarar?

    • Gelen isteği yöntem ve yola göre doğru işleyiciye yönlendirir
    • Veritabanına doğrudan bağlanır ve tablo oluşturur
    • HTML formu üretir ve tarayıcıya gönderir
    • Oturum ve çerez yönetimini üstlenir
    Cevabı göster

    Gelen isteği yöntem ve yola göre doğru işleyiciye yönlendirir — Doğru. Router yöntem ve yola bakarak eşleşen işleyiciyi çağırır; böylece istekler tek bir yerden dağıtılır.

  2. Sınıf adını tamamla

    class ____ {
        public array $routes = [];
    }
    Cevabı göster
    class Router {
        public array $routes = [];
    }
  3. Proje kavramlarını eşleştir

    Router
    İstekleri yönlendirir
    addRoute
    Rota ekler
    dispatch
    Eşleşen rotayı çağırır
    JsonResponse
    Yapısal veri yanıtı

İleri seviye bölümündeki tüm dersler