0Pricing
TypeScript Academy · Ders

Express İstek ve Yanıtlarını Türlendirme

Türlendirilmiş rota parametreleri ve gövdeleri için Express türlerini genişletin

Express İstek ve Yanıtlarını Türlendirme, CoddyKit'te ücretsiz bir TypeScript Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, TypeScript Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. TypeScript Academy kursu toplamda 4 dersten oluşur.

Hoş Geldiniz

Express, @types/express aracılığıyla TypeScript türleri sağlar. Yolları tür güvenli hâle getirmeyi öğrenin.

Türleri Yükleme

Express'i tür tanımlarıyla yükleyin.
npm install express
npm install --save-dev @types/express

Temel Yol Türleri

Request ve Response'u express'ten içe aktarın.
import { Request, Response } from 'express';
app.get('/users', (req: Request, res: Response) => {
  res.json({ users: [] });
});

Tür Belirtilmiş Yol Parametreleri

Request üzerindeki jenerikleri kullanarak yol parametrelerinin türünü belirtin.
interface Params { id: string; }
app.get('/users/:id', (req: Request<Params>, res: Response) => {
  const { id } = req.params;
});

Tür Belirtilmiş İstek Gövdesi

İstek gövdesinin türünü RequestBody jeneriğiyle belirtin.
interface CreateUser { name: string; email: string; }
app.post('/users', (req: Request<{}, {}, CreateUser>, res: Response) => {
  const { name, email } = req.body;
});

Tür Belirtilmiş Sorgu Parametreleri

Sorgu dizesi parametrelerinin türünü belirtin.
interface Query { page?: string; limit?: string; }
app.get('/users', (req: Request<{}, {}, {}, Query>, res: Response) => {
  const page = parseInt(req.query.page ?? '1');
});

Request'i Genişletme

Modül genişletmesi yoluyla Request'e özel özellikler ekleyin.
declare global {
  namespace Express {
    interface Request { user?: User; }
  }
}

Tür Belirtilmiş Yanıt

JSON gövdesinin türünü belirtmek için Response üzerinde jenerikleri zincirleyin.
app.get('/me', (req: Request, res: Response<User>) => {
  res.json(req.user!); // response body must be User
});

Hata İşleyicisi Türleri

Express hata işleyicilerinin belirli dört parametreli bir imzası vardır.
import { ErrorRequestHandler } from 'express';
const errHandler: ErrorRequestHandler = (err, req, res, next) => {
  res.status(500).json({ error: err.message });
};

Router'ı Türlerle Kullanma

Bir Router'ın türünü ana uygulamayla aynı şekilde belirtin.
import { Router } from 'express';
const router = Router();
router.get('/:id', (req: Request<{ id: string }>, res) => {});

Doğrulama Ara Yazılımı

İstek türlerini doğrulamak ve daraltmak için tür belirtilmiş bir ara yazılım kullanın.
function parseBody<T>(schema: ZodSchema<T>) {
  return (req: Request, res: Response, next: NextFunction) => {
    req.body = schema.parse(req.body);
    next();
  };
}

Hızlı Kontrol

Bir TypeScript projesinde @types/express kullanmanın temel yararı nedir?

Özet

Express Request ve Response Türlerini Belirtme: params, body ve query için Request/Response genel türlerini belirtin. Özel özellikler için modül genişletmesi yoluyla Request'i genişletin. Ara yazılımı ve hata işleyicilerini kendilerine özgü imzalarıyla türlendirin.

Sıkça Sorulan Sorular

“Express İstek ve Yanıtlarını Türlendirme” dersi ücretsiz mi?

Evet — “Express İstek ve Yanıtlarını Türlendirme” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve TypeScript Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. TypeScript Academy kursu toplamda 4 dersten oluşur.

“Express İstek ve Yanıtlarını Türlendirme” dersinde ne öğreneceğim?

Türlendirilmiş rota parametreleri ve gövdeleri için Express türlerini genişletin TypeScript Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

TypeScript Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te TypeScript Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.

“Express İstek ve Yanıtlarını Türlendirme” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu TypeScript Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her TypeScript Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. TypeScript'i Node.js ile Kurma
  2. Express İstek ve Yanıtlarını Türlendirme
  3. Türlendirilmiş Ara Katmanlar ve Hata İşleyicileri
  4. Ortam Değişkenleri ve Yapılandırma Türlendirmesi
← TypeScript Academy Sayfasına Dön