👑 Node.js ve REST API Geliştirme

Bu döküman, Yazılım Uzmanlığı kategorisinde Uzman Seviye eğitim materyalidir. Aşağıda konunun detaylı açıklaması, örnekler ve pratik alıştırmalar bulacaksınız.

💡 Seviye: Uzman — Bu içerik uzman düzeyinde derinlemesine bilgi ve uygulama içerir. İleri seviye deneyim gerektirir.

Express.js API

const express = require("express");\nconst app = express();\napp.use(express.json());\n\n// GET - Tüm öğrenciler\napp.get("/api/ogrenciler", (req, res) => {\n    res.json(ogrenciler);\n});\n\n// POST - Yeni öğrenci\napp.post("/api/ogrenciler", (req, res) => {\n    const yeni = req.body;\n    ogrenciler.push(yeni);\n    res.status(201).json(yeni);\n});\n\napp.listen(3000);

JWT Authentication

const jwt = require("jsonwebtoken");\n\n// Token oluşturma\nconst token = jwt.sign(\n    { id: user.id, email: user.email },\n    process.env.JWT_SECRET,\n    { expiresIn: "24h" }\n);\n\n// Token doğrulama middleware\nfunction authMiddleware(req, res, next) {\n    const token = req.headers.authorization?.split(" ")[1];\n    if (!token) return res.status(401).json({ error: "Yetkisiz" });\n    try {\n        req.user = jwt.verify(token, process.env.JWT_SECRET);\n        next();\n    } catch { res.status(403).json({ error: "Geçersiz token" }); }\n}

🎯 Full-Stack API Projesi

  1. Öğrenci yönetim API'si oluşturun
  2. CRUD endpoint'leri yazın
  3. JWT ile authentication ekleyin
  4. MySQL veritabanı bağlantısı kurun