Express.js ile API Geliştirme: Adım Adım Başarıya Giden Yol

Express.js ile API Geliştirme: Adım Adım Başarıya Giden Yol

Express.js ile API geliştirme adımlarını detaylı bir şekilde keşfedin. Bu yazı, Node.js ve Express.js kullanarak hızlıca API oluşturmanın yollarını anlatıyor.

BFS

Her geliştiricinin yolculuğunda bir an vardır, o an Express.js ile API geliştirme sürecinin başlama anıdır. Eğer siz de backend geliştirme dünyasında yeniyseniz, doğru yerdesiniz. Express.js, Node.js tabanlı güçlü bir framework olup, API geliştirmeyi oldukça kolaylaştırır. Hadi gelin, birlikte Express.js ile API geliştirme adımlarını keşfedelim.

Express.js Nedir?


Express.js, Node.js üzerinde çalışan minimalist ve esnek bir web uygulama çatısıdır. API'ler, web sunucuları ve dinamik web uygulamaları oluşturmak için harika bir araçtır. Hızlıca başlamak ve verimli bir şekilde geliştirmek isteyen geliştiriciler için ideal bir tercihtir. Birçok geliştirici, Express.js’in basitliğinden ve kolaylığından yararlanarak projelerini hızla hayata geçirir.

İlk Adım: Node.js ve Express.js Kurulumu


Express.js ile çalışmaya başlamadan önce, Node.js'in sisteminizde yüklü olması gerektiğini unutmayın. Node.js ve npm (Node Package Manager) yüklü değilse, ilk önce [Node.js resmi web sitesinden](https://nodejs.org) indirip yüklemeniz gerekiyor. Ardından, Express.js’i projenize dahil etmek için terminal üzerinden şu komutu çalıştırabilirsiniz:


npm install express --save


Bu komut, Express.js’i projenize dahil eder ve kullanıma hazır hale getirir.

API Oluşturma: İlk Adımlar


Şimdi, Express.js ile basit bir API geliştirmeye başlayalım. İlk olarak, bir `server.js` dosyası oluşturalım ve Express.js’i projeye dahil edelim.


const express = require('express');
const app = express();
const port = 3000;

app.get('/', (req, res) => {
  res.send('Merhaba Dünya!');
});

app.listen(port, () => {
  console.log(`Sunucu http://localhost:${port} üzerinde çalışıyor`);
});


Yukarıdaki kod, temel bir Express.js sunucusu oluşturur. `GET` isteği ile gelen taleplere, "Merhaba Dünya!" mesajını döndürür. Şimdi, bu API’yi tarayıcınızda görüntüleyebilirsiniz: `http://localhost:3000`.

Veri ile Çalışma: POST İstekleri


Şimdi biraz daha ileri gidip, verilerle çalışalım. Express.js, `POST` istekleri ile gelen verileri almak için mükemmel bir araçtır. Bir JSON verisi almak için aşağıdaki gibi bir kod kullanabilirsiniz:


app.use(express.json()); // JSON verisi almak için

app.post('/api/user', (req, res) => {
  const user = req.body;
  res.status(201).send({
    message: 'Kullanıcı başarıyla eklendi!',
    user: user
  });
});


Yukarıdaki kod, bir `POST` isteği alır ve bu istekteki veriyi bir kullanıcı olarak kabul eder. API, başarılı bir şekilde eklenen kullanıcıyı geri döndürür.

Veritabanı Entegrasyonu


Gerçek dünya projelerinde veritabanı entegrasyonu oldukça önemli bir yer tutar. Express.js ile bir veritabanı bağlamak için genellikle `MongoDB`, `MySQL` veya `PostgreSQL` gibi veritabanları tercih edilir. Örneğin, MongoDB ile çalışmak için `mongoose` paketini kurarak veritabanı bağlantısını gerçekleştirebilirsiniz.


const mongoose = require('mongoose');

mongoose.connect('mongodb://localhost:27017/mydatabase', { useNewUrlParser: true, useUnifiedTopology: true })
  .then(() => console.log('Veritabanına bağlanıldı!'))
  .catch(err => console.error('Veritabanına bağlanırken bir hata oluştu:', err));


Bu kod, Express.js sunucusunu başlattığınızda MongoDB veritabanına bağlanmanızı sağlar.

API Güvenliği: JWT ile Kimlik Doğrulama


API’lerin güvenliği, uygulama geliştirmede önemli bir adımdır. JSON Web Tokens (JWT), Express.js ile API güvenliği sağlamak için harika bir yoldur. JWT ile kullanıcı kimlik doğrulaması yaparak, kullanıcıların yalnızca yetkilendirilmiş işlemleri gerçekleştirmesine izin verebilirsiniz.


const jwt = require('jsonwebtoken');

app.post('/login', (req, res) => {
  const user = req.body;
  
  // Burada gerçek kimlik doğrulama yapılmalı
  const token = jwt.sign({ id: user.id }, 'secretkey', { expiresIn: '1h' });
  
  res.json({ token });
});

app.get('/protected', (req, res) => {
  const token = req.headers['authorization'];

  jwt.verify(token, 'secretkey', (err, decoded) => {
    if (err) {
      return res.status(403).send('Geçersiz token!');
    }

    res.send('Korunan alana erişim başarılı!');
  });
});


Bu kod, kullanıcılara bir token verir ve bu token’ı korunan alanlarda doğrulamak için kullanır. Bu, API güvenliğini sağlamanın etkili bir yoludur.

Sonuç


Express.js ile API geliştirme süreci, ilk başta karmaşık görünse de, adım adım ilerledikçe ne kadar basit ve güçlü olduğunu fark ediyorsunuz. Bu yazıda, Express.js ile API geliştirmeye başlamak için gerekli temel adımları inceledik. Artık, geliştirdiğiniz API’yi kullanıcılarla paylaşmak için gerekli tüm bilgilere sahipsiniz.

İlgili Yazılar

Benzer konularda diğer yazılarımız

ASP.NET Core ile Mobil Uygulama Geliştirme: Cross-Platform Web ve Mobil Uygulama Birleştirme

Günümüzde mobil uygulamalar hayatımızın ayrılmaz bir parçası haline geldi. Akıllı telefonlarımızda geçirdiğimiz zamanın büyük bir kısmını mobil uygulamalar sayesinde geçiriyoruz. Peki, bir mobil uygulama geliştirirken karşılaştığımız zorlukları nasıl...

ASP.NET Core 500 Internal Server Error: Sebepleri ve Çözümleri

Bir web geliştiricisi olarak, karşılaştığınız en zorlayıcı hatalardan biri şüphesiz "500 Internal Server Error"dır. Bu hata, web uygulamanızda her şeyin yolunda gittiğini düşündüğünüz bir anda karşınıza çıkabilir ve tüm projeyi durdurabilir. Ancak merak...

OAuth2 Authentication Error: Nedenleri ve Çözümleri

OAuth2 Authentication Error: Gerçekten Neyin Peşindeyiz?Her geliştirici, kimlik doğrulama hatalarıyla bir noktada karşılaşmıştır. Ama bazen işler kontrolden çıkabiliyor. Eğer bir gün OAuth2 ile çalışırken bir kimlik doğrulama hatası aldığınızda, yalnız...