Node.js ve REST API Nedir?
Öncelikle, temel kavramları biraz açalım. Node.js, JavaScript ile sunucu tarafında uygulama geliştirmek için kullanılan bir platformdur. REST (Representational State Transfer) ise bir mimari tarzıdır ve web hizmetlerinin nasıl yapılandırılacağına dair standartlar getirir. REST API, bu standartlara uygun şekilde çalışan bir web servisi sağlar.
Gerekli Araçlar ve Kurulum
Node.js ile REST API yazmaya başlamadan önce bazı araçlara ihtiyacımız olacak. İlk olarak Node.js ve npm (Node Paket Yöneticisi) bilgisayarınızda kurulu olmalıdır. Eğer henüz kurmadıysanız, [Node.js'in resmi sitesinden](https://nodejs.org/en/) kolayca indirip kurabilirsiniz.
Aşağıdaki komutu terminalde çalıştırarak Node.js'in kurulu olup olmadığını kontrol edebilirsiniz:
kopyalanode -v
Eğer versiyon numarasını görüyorsanız, kurulum tamamdır! Şimdi, Express.js'i kullanarak API'mizi geliştirmeye başlayacağız. Express.js, Node.js için minimal ve esnek bir web uygulama çatısıdır. Hemen terminalde aşağıdaki komutla Express.js'i projemize dahil edebiliriz:
kopyalanpm init -y
Bu komut, `package.json` dosyasını oluşturur. Ardından, Express.js’i yükleyelim:
kopyalanpm install express
Basit Bir API Oluşturma
Şimdi, Express ile basit bir REST API yapalım. Hedefimiz, bir kullanıcının adını ve yaşını alıp, onları geri dönen bir API oluşturmak.
Öncelikle `app.js` adında bir dosya oluşturun ve şu kodu ekleyin:
kopyalaconst express = require('express'); const app = express(); const port = 3000; // JSON verisini alabilmek için middleware kullanıyoruz app.use(express.json()); // Basit bir GET isteği app.get('/', (req, res) => { res.send('Node.js REST API\'ye hoş geldiniz!'); }); // POST isteği ile kullanıcı verisi alıyoruz app.post('/user', (req, res) => { const { name, age } = req.body; res.json({ message: `Merhaba ${name}, yaşınız: ${age}!`, }); }); // Sunucu çalıştırılıyor app.listen(port, () => { console.log(`Server ${port} portunda çalışıyor...`); });
Bu kodda, Express ile basit bir API oluşturduk. `/` endpoint'ine yapılan GET isteğine cevap olarak bir hoş geldiniz mesajı gönderiyoruz. `/user` endpoint'ine ise POST isteği gönderildiğinde, JSON formatında gönderilen veriyi alıyoruz ve kullanıcıya geri dönüyoruz.
API'yi Çalıştırma
Şimdi terminalde şu komutu çalıştırarak API'yi başlatabiliriz:
kopyalanode app.js
Bundan sonra, [http://localhost:3000](http://localhost:3000) adresine giderek API'yi test edebilirsiniz.
API'yi Test Etme
API'nin çalışıp çalışmadığını kontrol etmek için Postman gibi bir araç kullanabilirsiniz. Yeni bir POST isteği açın ve URL olarak `http://localhost:3000/user` yazın. Body kısmında şu şekilde JSON verisi gönderin:
kopyala{ "name": "Ahmet", "age": 25 }
Eğer her şey doğru çalışıyorsa, şu cevabı almanız gerekecek:
kopyala{ "message": "Merhaba Ahmet, yaşınız: 25!" }
Sonraki Adımlar
Artık temel bir REST API'yi çalıştırabiliyoruz. Ancak gerçek dünya uygulamalarında genellikle veri tabanı bağlantıları, doğrulama işlemleri ve hata yönetimi gibi ek özellikler gereklidir. Bu konuda Express.js ve diğer araçları kullanarak daha sağlam ve güvenli API'ler geliştirebilirsiniz.
API'nizi ölçeklendirirken, API limitleri, rate limiting ve authentication gibi önemli konuları göz önünde bulundurmalısınız. JWT (JSON Web Tokens) ile kullanıcı doğrulama işlemleri gibi daha gelişmiş özellikler ekleyerek, güvenli bir API oluşturabilirsiniz.
Sonuç
Node.js ile REST API yazmak, öğrenmesi oldukça keyifli ve uygulama geliştirme sürecinin önemli bir parçasıdır. Yukarıdaki örnekle, temel bir API oluşturmayı öğrendiniz ve bu bilgileri daha karmaşık projelerinizde kullanabilirsiniz. API'nizi daha da geliştirmek için Express.js'in sunduğu pek çok araç ve özellik mevcut. Hadi, şimdiden Node.js ile daha büyük projelere imza atmak için adım atın!