Teknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor HaberleriTeknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor HaberleriTeknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor Haberleri
Yazı Tipi BoyutlandırıcıAa
  • Anasayfa
  • Teknoloji
    • Siber Güvenlik
    • Yapay Zeka
    • Donanım
    • Bilim
  • Yazılım
  • Savunma & İstihbarat
  • Oyun
  • Yaşam
    • Finans
    • Sinema
    • Dünyadan Haberler
  • İş Birliği
Okuma: Laravel API Öğrenimi: Problemlerden Çözümlere!
Paylaş
Yazı Tipi BoyutlandırıcıAa
Teknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor HaberleriTeknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor Haberleri
Ara
Bizi Takip Et
  • Hakkımızda
  • Gizlilik politikası
  • Tanıtım Yazısı ve Backlink Hizmeti
© 2026 Teknomers. All Rights Reserved.

Anasayfa » Laravel API Öğrenimi: Problemlerden Çözümlere!

Yazılım

Laravel API Öğrenimi: Problemlerden Çözümlere!

teknomers
Son güncelleme: 12 Ocak 2026 02:58
teknomers
Paylaş
Paylaş

“Frontend React uygulamanızın Laravel backend’den verileri almadığını hiç düşündünüz mü? Ya da Postman yanıt alamadığında dolanıp durmuş mu? Rahatlayın, yalnız değilsiniz! Birçok Laravel başlangıcı aynı sorunu yaşıyor. İşte burada Laravel API imdadınıza yetişiyor.”

React frontend ve Laravel backend tasarlarken, verilerin görünmemesi API’nın hazır olmamasından kaynaklanıyorsa, oldukça sinir bozucu olabilir. Bu makale, bu karmaşayı aşmanız için kapsamlı bir çözüm sunuyor!




API Neden Önemlidir?

  • API, frontend ve backend arasında bir köprü işlevi görür.
  • Tek Sayfa Uygulamaları (SPA) ve mobil uygulamalar için zorunludur.
  • API olmadan, veriler kullanıcıya gösterilemez.



Laravel API Örneği: Makale CRUD

Bu yazıda, Laravel kullanarak basit ama etkili bir Makale API’si oluşturacağız. Blog, haber veya deneme projeleri için oldukça kullanışlıdır.




Laravel API Çalışma Akışı

Yazmaya başlamadan önce akışı anlayın:

Client (Postman / Frontend)
→ HTTP İsteği
→ API Yolu
→ Kontrolcü
→ Model
→ Veritabanı
→ JSON Yanıtı

Yani, her seferinde istemci verileri ister, istek yol üzerinden geçer, kontrolcü tarafından işlenir, model/veritabanından veriler alınır ve yanıt JSON olarak geri döner.




Adım 1: Laravel Projesini Kurun

  • En son Laravel sürümüne (örneğin, 10.x) sahip olun.
  • Composer’ın yüklü olduğundan emin olun.
composer create-project --prefer-dist laravel/laravel öğren-api

Veritabanını .env dosyasında ayarlayın:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=öğren_api
DB_USERNAME=root
DB_PASSWORD=



Adım 2: Model ve Migration Oluşturun

Neden -m ile oluşturmalıyız?

-m, otomatik olarak migration dosyası oluşturur; manuel oluşturmanıza gerek kalmaz.

php artisan make:model Article -m

Migration dosyasını database/migrations/..._create_articles_table.php dosyasında düzenleyin:

public function up()
{
    Schema::create('articles', function (Blueprint $table) {
        $table->id();
        $table->string('title');
        $table->text('content');
        $table->timestamps();
    });
}

Migration’ı çalıştırın:

php artisan migrate



$fillable‘ın Önemi

Model Article.php dosyasına ekleyin:

protected $fillable = ['title', 'content'];

Bu neden gerekli?

Belirtilmezse, Laravel verileri kaydedemez çünkü kitlesel atama koruması vardır. Bu, verilerin veritabanına girerken gerçekten izin verilenleri doğrulama amacı güder.




Adım 3: Makale API Kontrolcusu Oluşturma

Kaynak kontrolcüsünü oluşturun:

php artisan make:controller Api/ArticleController --resource

Ana işlevlerin açıklaması:

  • index() → Veritabanından tüm makaleleri alır, JSON olarak geri döner.
  • store() → Yeni makale kaydeder. Genellikle istekteki verileri alır, doğrular ve ardından kaydeder.
  • show($id) → ID’ye göre makale detaylarını alır.
  • update($id) → Belirli bir makalenin verilerini değiştirir.
  • destroy($id) → Makaleyi siler.

Kısa bir örnek uygulama:

public function index() {
    return Article::all();
}

public function store(Request $request) {
    // Önce doğrulayın
    $validated = $request->validate([
        'title' => 'required',
        'content' => 'required',
    ]);
    // Veriyi kaydet
    $article = Article::create($validated);
    return response()->json($article, 201);
}

public function show($id) {
    return Article::findOrFail($id);
}

public function update(Request $request, $id) {
    $article = Article::findOrFail($id);
    $article->update($request->all());
    return response()->json($article);
}

public function destroy($id) {
    Article::destroy($id);
    return response()->json(null, 204);
}



Adım 4: API Yolu Ekleme

routes/api.php dosyasını düzenleyin:

Route::apiResource('articles', App\Http\Controllers\Api\ArticleController::class);



Postman ile API Testi Yapma

Endpoint’leri Postman/curl ile kontrol edin:

YöntemEndpointFonksiyonÖrnek İstekÖrnek Yanıt
GET/api/articlesTüm makaleleri listele–[ {...} ]
POST/api/articlesYeni makale kaydet{ "title": "Laravel API Öğren", "content": "Kapsamlı ve kolay bir eğitim!" }{ "id": 1, ... }
GET/api/articles/{id}Makale detayları–{ "id": 1, ... }
PUT/api/articles/{id}Makale güncelle{ "title": "Güncelledi", "content": "İçeriği düzenle" }{ "id": 1, ... }
DELETE/api/articles/{id}Makale sil–null



Tam Örnek İstek & Yanıt

POST İsteği:

POST /api/articles
Content-Type: application/json

{
    "title": "Laravel API Öğren",
    "content": "Kapsamlı ve kolay bir eğitim!"
}

Yanıt 201 Oluşturuldu:

{
    "id": 1,
    "title": "Laravel API Öğren",
    "content": "Kapsamlı ve kolay bir eğitim!",
    "created_at": "2026-01-10"
}

GET İsteği:

GET /api/articles/1

Yanıt 200 Tamam:

{
    "id": 1,
    "title": "Laravel API Öğren",
    "content": "Kapsamlı ve kolay bir eğitim!",
    "created_at": "2026-01-10"
}

PUT İsteği:

PUT /api/articles/1
Content-Type: application/json

{
    "title": "Güncelledi Başlık",
    "content": "İçerik güncellendi!"
}

Yanıt 200 Tamam:

{
    "id": 1,
    "title": "Güncelledi Başlık",
    "content": "İçerik güncellendi!",
    "created_at": "2026-01-10"
}

DELETE İsteği:

DELETE /api/articles/1

Yanıt 204 İçerik Yok:

null



Laravel’de Hata Yönetimi & Durum Kodları

Laravel, işlemlere göre otomatik olarak durum kodu gönderir:

  • 200 Tamam: Veri başarıyla alındı/güncellendi
  • 201 Oluşturuldu: Veri başarıyla oluşturuldu
  • 204 İçerik Yok: Veri başarıyla silindi
  • 404 Bulundu: Veri bulunamadı
  • 422 İşlenemez Varlık: Doğrulama başarısız
  • 500 Sunucu Hatası: Sunucu hatası

Hata yanıtı örneği:

{
    "message": "Model [App\\Models\\Article] için sorgu sonuçları bulunamadı 99"
}

Tavsiyeler: Veri bulunamadığında otomatik olarak 404 yanıtı almak için findOrFail() kullanın.




Başlangıçların Yaygın Hataları

“Laravel API oluştururken başlangıçların yaptığı yaygın hatalar:”

  • Modelde $fillable eklemeyi unutmak, bu nedenle veriler kaydedilemez.
  • Veri kaydetmek için GET yöntemini kullanmak (POST kullanılmalı).
  • Girdi doğrulaması yapmamak, verilerin düzensiz olmasına neden olur.
  • Bütün alanları filtre olmadan açığa çıkarmak.
  • .env dosyasında yanlış yapılandırma (veritabanı, port, kullanıcı/parola).
  • Yolu web.php dosyasında çalıştırmak, api.php‘da değil.
  • Yapılandırmayı değiştirdikten sonra sunucuyu yeniden başlatmayı unutmak.

Tavsiyeler: Yanıtlardaki hataları her zaman kontrol edin, yöntemin ve alanların doğru olduğundan emin olun, ve ortam yapılandırmanızı kontrol edin!




Bir Sonraki Adım: API’nizi Geliştirin!

CRUD’dan ileri gitmeyin. Keşfetmeye çalışın:

  • Sanctum / Auth: API’nizi güvenli hale getirin.
  • API Kaynağı: Yanıt formatını daha düzenli hale getirin.
  • Paginasyon: Çok sayıda veri için.
  • Rate Limiting: Spam yapılmasını önlemek için.

Devam eden makaleleri bekleyin!




🚀 Tartışalım & Paylaşalım!

Belirli bir adımda zorlanıyorsanız, yorumda belirtin! Laravel API oluşturma deneyimlerinizi de paylaşın, ya da sonraki konular için talepleri (kimlik doğrulama, API kaynakları, sayfalama vb.) iletin.

Ayrıca, bu makaleyi öğrenen arkadaşlarınıza takip etmeyi ve paylaşmayı unutmayın!




Kısa Yapı

  1. Başlangıçların sıkça karşılaştığı sorunlar
  2. Ne yapacağımız
  3. Laravel API akış şeması
  4. Kısa kurulum
  5. Adım adım CRUD API
  6. API testi
  7. Yaygın hatalar
  8. Sonraki adım / ilerleme

Referanslar:

Kaynak: Orijinal Makale

Contents
  • API Neden Önemlidir?
  • Laravel API Örneği: Makale CRUD
  • Laravel API Çalışma Akışı
  • Adım 1: Laravel Projesini Kurun
  • Adım 2: Model ve Migration Oluşturun
    • $fillable‘ın Önemi
  • Adım 3: Makale API Kontrolcusu Oluşturma
  • Adım 4: API Yolu Ekleme
  • Postman ile API Testi Yapma
    • Tam Örnek İstek & Yanıt
    • Laravel’de Hata Yönetimi & Durum Kodları
  • Başlangıçların Yaygın Hataları
  • Bir Sonraki Adım: API’nizi Geliştirin!
  • 🚀 Tartışalım & Paylaşalım!
  • Kısa Yapı
Laravel Kısa Kodları Paketi – DEV Community
Algolia’ya Para Ödemeyi Bırakın: PostgreSQL Tam Metin Aramasını Ustalıkla Kullanma 🐘
2026’da Laravel ile SaaS Ürünü Geliştirme: Tam Yol Haritası
Livewire ve Inertia Tartışmasını Neden Düşünmeyi Bıraktım (ve Birini Nasıl Seçersiniz)
iOS 16 çıkış tarihi söylentileri, desteklenen iPhone’lar ve görmek istediğimiz 5 özellik
Bu Makaleyi Paylaş
Facebook Bağlantıyı Kopyala Yazdır
Paylaş
Önceki Makale Billy Woods’ Golliwog A24 izleyicileri için bir korku ustalığı
Sonraki Makale Şampiyonlar Arasında Devrim: Shyvana Yenilemesi ve Yeni Oyun Modları

Sanal Medya

FacebookBeğen
452Takip Et
PinterestSabitle
237Takip Et

Son Eklenenler

EA Sports’un Yeni Abonelik Sistemi Oyuncuları Heyecanlandıracak
Oyun
Google ve FBI siber saldırganları engellemek için uyarıyor
Genel
Kongre, izinsiz gözetim konusunda hâlâ karar veremedi
Liste
Bu Yaz Seyahat Sezonu, Sürdürülebilir Havacılık Yakıtının Geleceğini Değiştirebilir!
Genel
Nvidia’nın 2026 için RTX 50 Super serisi planları ifşa edildi
Donanım
IBM’in Gölgelerindeki Veri İhlalleri Ortaya Çıktı
Genel
//

Siber güvenlik, yapay zeka ve savunma sanayiinden; finans ve sinema dünyasına uzanan geniş bir yelpaze. Teknomers; teknoloji, strateji ve yazılım dünyasını sade bir dille sizlerle buluşturuyor.

Kurumsal

  • Hakkımızda
  • Gizlilik politikası
  • Tanıtım Yazısı ve Backlink Hizmeti

Kategoriler

  • Teknoloji
  • Oyun
  • Sinema
  • Siber Güvenlik
  • Bilim
  • Finans
  • Dünyadan Güncel Haberler

Populer

  • TV'de Ücretsiz İzlenebilen Şifresiz Erotik Kanallar (2025 Güncel Frekans Listesi)

  • The Last of Us PC Kontrolleri: Hızlı Silah Değiştirme ve Tüm Tuşlar (2025)

  • Hogwarts Legacy'de Odaklanma İksiri Nasıl Yapılır?

Teknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor HaberleriTeknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor Haberleri
Bizi Takip Et
© 2026 Teknomers. All Rights Reserved.
Welcome Back!

Sign in to your account

Kullanıcı Adı veya E-posta Adresi
Şifre

Şifrenizi mi unuttunuz?