Proje tasarımı
- Node.js kursu
- Orta seviye
- Ders 112/116
- 6 dk
Orta seviye finali mini uygulamasının iskeletini tasarlarsın.
Proje: Mini API sunucusu
Bu 5 derslik projede Express ile mini bir API sunucusu kuracaksın. Her derste bir parça ekleyecek, son derste rotalar, dosya kalıcılığı ve ara katman (middleware) birleşik çalışacak. Her dersin başlangıç kodu önceki dersin çözümünü içerir.
Express, Node.js üzerinde HTTP sunucusu yazmanın en yaygın çerçevesidir. const express = require('express') ile içe aktarılır, const app = express() ile uygulama nesnesi oluşturulur. app.get(yol, işleyici) bir GET rotası kaydeder. Rotaları bir dizide de tutarsan, program çalışırken kaç rota olduğunu yazdırabilirsin. Bu proje Express + fs + middleware birikimini sınamak için tasarlandı.
Rota kaydı
Bir rotayı app.get(yol, işleyici) ile kaydedersin. İşleyici (handler) (req, res) => res.json(veri) biçimindedir; req isteği, res yanıtı temsil eder. res.json(veri) yanıtı JSON olarak gönderir.
Rotaları elle bir dizide de tutmak, programın durumunu yazdırabilmeni sağlar. Örnek: routes.push({method: 'GET', path: '/health'}). Sonra console.log('Rota sayısı: ' + routes.length) ile özet yazdırılır. Express'in app.get çağrısı rotayı kaydeder; senin dizin ise bu kaydı aynalaştırır. Böylece rotaların listesini program içinde denetleyebilirsin.
Uygulama Express iskeletini kur
const express = require('express') ile içe aktar. const app = express() ile uygulama nesnesi oluştur. const routes = [] tanımla. app.get('/health', (req, res) => res.json({ok: true})) ile sağlık rotası ekle. routes.push({method: 'GET', path: '/health'}) ile dizine kaydet. console.log('Sunucu hazır') yazdır.
Başlangıç kodu
// express modülünü içe aktar ve app oluştur
// /health rotası ekle, rotaları diziye kaydet
// 'Sunucu hazır' yazdır
// buraya yazÖrnek çözüm
const express = require('express');
const app = express();
const routes = [];
app.get('/health', (req, res) => res.json({ok: true}));
routes.push({method: 'GET', path: '/health'});
console.log('Sunucu hazır');Beklenen çıktı
Sunucu hazır
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 express() ne döndürür?
const app = express();- Bir dize
- Bir sayı
- Bir promise
- Uygulama nesnesi Doğru cevap
Açıklama: express() uygulama nesnesini döndürür, rotalar bununla eklenir.
2 express modülünü içe aktar
const express = require(____);
const express = require('express');
Açıklama: express modülü require('express') ile alınır.
3 Parçayı rolüne eşle
| Kavram | Anlamı |
|---|---|
express() |
Uygulama nesnesi yaratır |
app.get |
GET rotası kaydeder |
res.json |
JSON yanıtı gönderir |
routes.push |
Rotayı diziye ekler |