« Tüm yayınlar

Next.js Server Actions ile API Route'lardan Kurtulun

Next.js Server Actions ve Zod ile manuel API endpoint'leri ve fetch boilerplate'ini ortadan kaldırıp uçtan uca tip güvenliği sağlayan yaklaşımı inceliyoruz.

Next.js Server Actions, istemci tarafındaki bir React bileşeninden sunucuda çalışan bir fonksiyonu doğrudan çağırmayı mümkün kılarak geleneksel REST API route yazma zorunluluğunu ortadan kaldırıyor. Framework, ağ isteğini, serileştirmeyi ve CSRF korumasını otomatik olarak yönetiyor; böylece geliştiriciler fetch() çağrıları, isLoading/isError state yönetimi ve ayrı /api route'ları gibi tekrar eden boilerplate kodlarından kurtuluyor.

Bu yaklaşımın asıl gücü Zod şema doğrulama kütüphanesiyle birleştiğinde ortaya çıkıyor. Tek bir Zod şeması hem form doğrulamasında hem de sunucu tarafı veri işlemede referans olarak kullanılabiliyor; bu da frontend ile backend arasında tip uyuşmazlığı riskini pratikte sıfırlıyor. "use server" direktifiyle işaretlenen fonksiyonlar tarayıcıya asla gönderilmiyor ve yalnızca güvenli sunucu ortamında çalışıyor, bu da veritabanı işlemleri gibi hassas mantığın istemci tarafına sızmasını engelliyor.

React tarafında ise form elementinin native action attribute'una Server Action doğrudan geçirilebiliyor; useFormStatus hook'u ile pending durumu otomatik takip edilebiliyor, revalidatePath ile de cache güncellemesi ve UI senkronizasyonu tek satırda sağlanabiliyor. Bu mimari, büyük ölçekli projelerde binlerce satır boilerplate kodun ortadan kalkmasına ve frontend-backend arasında matematiksel düzeyde tip güvenliğine imkan tanıyor.