Express.js ile API Geliştirmeye Başlamak
Bir zamanlar, internetin hızla büyüdüğü yıllarda, dinamik web uygulamaları her geçen gün daha fazla popülerleşiyordu. Ancak, bu uygulamaların çoğu, veriye ulaşmak için bir arayüze ihtiyaç duyuyordu. İşte bu noktada API’ler devreye girdi.
API (Application Programming Interface), iki yazılım sisteminin birbiriyle iletişim kurmasını sağlayan bir köprü gibidir. Bu yazıda, API geliştirme konusunda yeniyseniz ve Express.js ile basit bir API kurmak istiyorsanız, doğru yerdesiniz.
Express.js Nedir ve Neden Kullanmalıyız?
Express.js, Node.js tabanlı bir web framework'üdür. Hızlı, esnek ve minimal bir yapıya sahiptir. Özellikle RESTful API’ler geliştirmek için kullanılır ve bunu hızlıca yapmanıza olanak sağlar. Express, size bir sunucu kurma, yönlendirme yapma ve HTTP isteklerini işleme konusunda kolaylık sunar.
Express.js, yalnızca bir API geliştirmekle kalmaz, aynı zamanda uygulamanızın ölçeklenebilirliğini artırır. Kısacası, Express sayesinde API'nizi hızlı ve verimli bir şekilde geliştirebilirsiniz.
API Geliştirme Adımları
API’nizi geliştirmeye başlamadan önce, temel yapı taşlarını kurmamız gerekiyor. Hadi adım adım ilerleyelim.
Adım 1: Projemizi Başlatıyoruz
Öncelikle, Express.js'i projede kullanabilmek için Node.js yüklü olmalı. Eğer yüklü değilse, [Node.js'in resmi web sitesinden](https://nodejs.org/) indirip yükleyebilirsiniz. Ardından terminalden yeni bir proje oluşturuyoruz.
```bash
mkdir express-api
cd express-api
npm init -y
```
Bu komutlar, yeni bir `express-api` dizini oluşturur ve `npm init -y` komutuyla hızlıca bir `package.json` dosyası oluşturur.
Adım 2: Express.js’i Yüklemek
Express.js'i yüklemek için aşağıdaki komutu çalıştırıyoruz:
```bash
npm install express
```
Bu işlem, Express.js'i proje bağımlılığı olarak yükler.
Adım 3: Basit Bir Sunucu Kurmak
Şimdi Express.js ile basit bir sunucu kurma zamanı! Projemizin ana dizininde `app.js` adında bir dosya oluşturuyoruz ve aşağıdaki kodu yazıyoruz:
const express = require('express');
const app = express();
app.get('/', (req, res) => {
res.send('Merhaba, Express API!');
});
app.listen(3000, () => {
console.log('Sunucu 3000 portunda çalışıyor...');
});
Yukarıdaki kod, Express ile basit bir sunucu başlatır. `/` adresine gelen istekleri “Merhaba, Express API!” mesajı ile yanıtlar. Sunucuyu çalıştırmak için şu komutu terminalden giriyoruz:
```bash
node app.js
```
Tarayıcınızda [http://localhost:3000](http://localhost:3000) adresine giderek API'nizin doğru çalışıp çalışmadığını kontrol edebilirsiniz.
Adım 4: RESTful API Endpoints Oluşturmak
Şimdi Express.js ile gerçek bir API geliştirme kısmına geçelim. Bu adımda, veri ekleyip, veri listeleyeceğiz. Hedefimiz, bir kullanıcı veritabanı simülasyonu yaparak, kullanıcı ekleyip, kullanıcıları listelemek olacak.
Öncelikle, veriyi saklamak için geçici bir dizi oluşturuyoruz.
let users = [
{ id: 1, name: 'Ali', age: 25 },
{ id: 2, name: 'Ayşe', age: 30 }
];
app.get('/users', (req, res) => {
res.json(users);
});
app.post('/users', (req, res) => {
const newUser = req.body;
users.push(newUser);
res.status(201).json(newUser);
});
Bu kod, iki farklı endpoint oluşturur:
- `GET /users`: Kullanıcıları listeleyen bir API.
- `POST /users`: Yeni bir kullanıcı ekleyen bir API.
Yukarıdaki kodu kullanabilmek için, body verilerini alabilmek adına `express.json()` middleware’ini kullanmamız gerekir. Bunu şu şekilde yapıyoruz:
app.use(express.json());
Adım 5: API’yi Test Etmek
Artık API'miz hazır. API’yi test etmek için Postman gibi bir araç kullanabilirsiniz. GET ve POST isteklerini rahatça yapabilirsiniz.
API'nizi Yayına Almak
Geliştirdiğiniz API’yi her zaman yerel sunucunuzda çalıştırmak istersiniz. Ancak gerçek dünyada, API’nizin yayına alınması gerekir. Bunun için Heroku veya DigitalOcean gibi platformları kullanabilirsiniz. Express.js uygulamanızı bu platformlara kolayca deploy edebilirsiniz.
Sonuç
Express.js ile basit bir API geliştirmek işte bu kadar kolay! Bu yazıda öğrendiğiniz bilgilerle, temel bir API kurmayı başardınız. Şimdi sıradaki adım, geliştirdiğiniz API’ye yeni özellikler eklemek ve daha büyük projelere adım atmak. Unutmayın, pratik yaparak her zaman daha iyi olabilirsiniz!