CodeBlanks Logo Icon CodeBlanks

Express uygulaması

Express uygulamasıyla API iskeletini kurarsın.

Express uygulaması

İkinci ders Express uygulaması kurmak. Express, Node.js için en popüler web çerçevesidir. const express = require("express"); const app = express(); ile bir uygulama oluşturursun.

Rota tanımlamak için app.get(yol, işleyici) kullanırsın. Örneğin app.get("/", (req, res) => res.json({ status: "ok" })) kök yola gelen isteğe JSON yanıt verir. req isteği, res yanıtı temsil eder. res.json() bir nesneyi JSON'a çevirip yanıtı gönderir. Sunucuyu başlatmak için app.listen(port, cb) çağrılır. Bu derste kök rotayı ekleyip API'nin çalıştığını doğrulayacağız.

res.json ile yanıt

res.json(veri) veriyi JSON dizgisine çevirir ve yanıtı gönderir. İçerik türü otomatik application/json olur. Bu, API'lerde en yaygın yanıt yöntemidir.

Örneğin res.json({ status: "ok" }) yanıtı {"status":"ok"} olur. res.send() de kullanılabilir ama JSON için res.json daha uygundur; çünkü içerik türünü ve seri hale getirmeyi otomatik yapar. Bu derste GET / rotası { status: "ok" } döndürecek; böylece API'nin yaşadığını göreceğiz. Sonraki derslerde /books rotasıyla gerçek veri döndüreceğiz.

Uygulama Kök rotayı tanımla

Bir GET "/" rotası tanımla. Rota işleyicisi res.json ile { status: "ok" } nesnesini JSON olarak döndürsün. Self-request bölümü başlangıç kodunda hazır.

Başlangıç kodu

index.js
const books = [];
books.push({ id: 1, title: "Node.js" });

const express = require("express");
const app = express();

// GET "/" rotası — { status: "ok" } JSON yanıtı gönder
// buraya yaz

// Self-request (hazır kod)
const server = app.listen(3000, () => {
  const http = require("http");
  http.get("http://localhost:3000/", (res) => {
    let body = "";
    res.on("data", (c) => body += c);
    res.on("end", () => { console.log(body); server.close(); });
  });
});

Örnek çözüm

index.js
app.get("/", (req, res) => {
  res.json({ status: "ok" });
});

Beklenen çıktı

{"status":"ok"}

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 GET rotasını tamamla

Soru
app.____("/", (req, res) => { res.json({ status: "ok" }); });
Cevap
app.get("/", (req, res) => { res.json({ status: "ok" }); });

Açıklama: app.get ile GET rotası tanımlanır.

2 Parçayı rolüne eşle

Kavram Anlamı
express Web çerçevesi
app.get GET rotası tanımlar
res.json JSON yanıtı gönderir
app.listen Sunucuyu başlatır

3 Express'te app.get hangi HTTP metodunu karşılar?

index.js
app.get("/", handler)
  • POST
  • GET Doğru cevap
  • DELETE
  • PUT

Açıklama: app.get yalnızca GET isteklerini karşılar.

Orta seviye bölümündeki tüm dersler