Özel Fiyat İndirimi! Acele edin, Teklif Yakında Sona Erecek!

Laravel ile RESTful API Oluşturma ve JWT Authentication

Admin
07.09.2025
Laravel
3 dakika
Laravel ile RESTful API Oluşturma ve JWT Authentication

Laravel ile RESTful API Oluşturma ve JWT Authentication

Laravel, sadece web uygulamaları için değil, RESTful API geliştirmek için de mükemmel bir altyapı sunuyor. 2025’te mobil uygulamalar ve frontend framework’leri (React, Vue, Angular) ile veri alışverişi yapmak için RESTful API’ler kritik önemde. Bu yazıda, Laravel ile bir API oluşturmayı, JWT authentication kullanarak güvenliği sağlamayı ve best practice’leri adım adım göstereceğiz.

1. Laravel Projesi Oluşturma ve Gerekli Paketler
Öncelikle Laravel projenizi oluşturun:

composer create-project laravel/laravel api-proje

JWT authentication için tymon/jwt-auth paketini yükleyin:

composer require tymon/jwt-auth
php artisan vendor:publish --provider="Tymon\JWTAuth\Providers\LaravelServiceProvider"
php artisan jwt:secret

Bu adım, JWT token üretimi ve doğrulaması için gerekli temel yapılandırmayı sağlar.

2. Kullanıcı Modeli ve Migration
API kullanıcıları için User modeli zaten Laravel ile geliyor. Ancak API odaklı projelerde email ve password doğrulamasını hazırlamak önemli. Migration dosyasında gerekli alanları ekleyin ve veritabanını migrate edin.

php artisan migrate

3. Auth Controller ve Register/Login İşlemleri
Bir AuthController oluşturun ve register ile login fonksiyonlarını yazın.

class AuthController extends Controller {
    public function register(Request $request) {
        $user = User::create([
            'name' => $request->name,
            'email' => $request->email,
            'password' => bcrypt($request->password)
        ]);
        $token = JWTAuth::fromUser($user);
        return response()->json(compact('user', 'token'));
    }

    public function login(Request $request) {
        $credentials = $request->only('email', 'password');
        if (!$token = JWTAuth::attempt($credentials)) {
            return response()->json(['error' => 'Invalid credentials'], 401);
        }
        return response()->json(compact('token'));
    }
}

4. Route Yapısı
API route’ları routes/api.php dosyasında tanımlanır:

Route::post('register', [AuthController::class, 'register']);
Route::post('login', [AuthController::class, 'login']);
Route::middleware('auth:api')->get('user', function(Request $request) {
    return $request->user();
});

auth:api middleware, API endpoint’lerine yalnızca doğrulanmış kullanıcıların erişmesini sağlar.

5. API Kaynakları ve Response Formatı
Laravel’de Resource sınıfları kullanarak JSON formatını standartlaştırabilirsiniz.

php artisan make:resource UserResource

UserResource ile API response’larını temiz ve anlaşılır hâle getirebilirsiniz.

6. Best Practice ve Güvenlik İpuçları

  • Token expiration süresini kısa tutun ve refresh mekanizması ekleyin.

  • Sensitive data’yı API response’larında göndermeyin (password, secret keys).

  • Rate limiting kullanarak brute force saldırılarına karşı koruma sağlayın.

  • Validation ve Exception handling ile kullanıcı deneyimini güvenli ve düzgün hâle getirin.

7. Test ve Postman ile Doğrulama
API endpoint’lerini Postman veya Insomnia ile test edin. Register ve login sonrası dönen JWT token’ı kullanarak protected route’lara erişim sağlayın.


Laravel ile RESTful API geliştirmek hem hızlı hem güvenli bir şekilde yapılabilir. JWT authentication, kullanıcı verilerini korurken modern frontend uygulamalarıyla sorunsuz entegrasyon sağlar. Bu adımlar ve best practice’ler ile güçlü, ölçeklenebilir ve güvenli bir API oluşturabilirsiniz.

Etiketler

"Laravel RESTful API Laravel API JWT authentication Laravel JWT Laravel backend API geliştirme PHP framework Laravel rehber web geliştirme secure API
ENS Soft Profil Fotoğrafı

ENS Soft Sosyal Medya Ekibi

Social Media Team

ENS Soft Social Media Account. Genel Merkez Üzerinden Yönetilmektedir.

Benzer Yazılar