Node.js Express'te sorgu parametreleri nasıl yönetilir

Node.js Express'te sorgu parametrelerini verimli yönetmeyi öğrenin. Temel kullanımdan gelişmiş doğrulamaya kadar her şey bu kapsamlı kılavuzda.

Efe Demir

Efe Demir

5 June 2025

Node.js Express'te sorgu parametreleri nasıl yönetilir

Selamlar, kod yazan dostlar! Bugün, Node.js Express'te sorgu parametreleri dünyasına dalıyoruz. İster yeni başlayan ister deneyimli bir geliştirici olun, sorgu parametrelerini verimli bir şekilde nasıl yöneteceğinizi anlamak, sağlam API'ler oluşturmak için çok önemlidir. O halde, kemerlerinizi bağlayın ve Express.js becerilerinizi geliştirmeye hazır olun!

Konuya girmeden önce, API dokümantasyonu ve test etme için başvuracağınız araç olan Apidog'a hızlı bir selam! Ücretsiz, güçlü ve API geliştirme yolculuğunuzu mükemmel bir şekilde tamamlıyor. Apidog'u ücretsiz indirmeyi ve hayatınızı kolaylaştırmayı unutmayın!

button

Sorgu Parametreleri Nedir?

Öncelikle, sorgu parametrelerinin ne olduğunu açıklığa kavuşturalım. Bir sunucuya bir GET isteği gönderdiğinizde, sorgu parametrelerini kullanarak ek veriler ekleyebilirsiniz. Bu parametreler URL'nin bir parçasıdır ve genellikle sunucu tarafından döndürülen verileri filtrelemek, sıralamak veya özelleştirmek için kullanılır.

Örneğin, kullanıcı verilerini getirmek için bir API oluşturuyorsanız, kullanıcıları yaşlarına veya konumlarına göre almak isteyebilirsiniz. İşte sorgu parametreleri içeren tipik bir URL'nin nasıl görünebileceği:

http://example.com/users?age=25&location=NY

Bu URL'de, age=25 ve location=NY sorgu parametreleridir.

Node.js Ortamınızı Kurmak

Sorgu parametreleriyle çalışmaya başlamadan önce, Node.js ortamımızı kurmamız gerekiyor. Henüz yapmadıysanız, Node.js'nin yüklü olduğundan emin olun. Bunu resmi Node.js web sitesinden indirebilirsiniz.

Node.js yüklendikten sonra, yeni bir proje dizini oluşturun ve npm ile başlatın:

mkdir express-query-params
cd express-query-params
npm init -y

Ardından, Express'i yükleyin:

npm install express

Temel Bir Express Sunucusu Oluşturmak

Artık ortamımız kurulduğuna göre, temel bir Express sunucusu oluşturalım. server.js adlı yeni bir dosya oluşturun ve aşağıdaki kodu ekleyin:

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

app.get('/', (req, res) => {
    res.send('Hello, world!');
});

app.listen(port, () => {
    console.log(`Server is running on http://localhost:${port}`);
});

Sunucunuzu aşağıdaki komutu kullanarak çalıştırın:

node server.js

"Server is running on http://localhost:3000" mesajını görmelisiniz. Tarayıcınızı açın ve ekranda "Hello, world!" ifadesini görmek için http://localhost:3000 adresine gidin.

Sorgu Parametreleri ile GET İsteklerini İşlemek

Artık temel bir sunucumuz olduğuna göre, sorgu parametrelerini işlemek için bazı işlevler ekleyelim.

Örnek 1: Basit Sorgu Parametreleri

Basit bir örnekle başlayacağız. Sorgu parametreleri içeren bir GET isteğini işlemek için sunucumuzu değiştirelim. server.js dosyanızı aşağıdaki gibi güncelleyin:

app.get('/users', (req, res) => {
    const age = req.query.age;
    const location = req.query.location;

    res.send(`Users with age: ${age} and location: ${location}`);
});

Bu kodda, sorgu parametrelerine erişmek için req.query kullanıyoruz. req.query nesnesi, URL'de gönderilen tüm sorgu parametrelerini içerir.

Uç Noktanızı Test Etmek

Sunucunuzu yeniden başlatın ve tarayıcınızda aşağıdaki URL'ye gidin:

http://localhost:3000/users?age=25&location=NY

"Users with age: 25 and location: NY" mesajını görmelisiniz.

Örnek 2: Birden Fazla Sorgu Parametresini İşlemek

Bir adım daha ileri gidelim ve birden fazla sorgu parametresini daha etkili bir şekilde ele alalım. Daha karmaşık senaryoları işlemek için server.js dosyanızı güncelleyin:

app.get('/search', (req, res) => {
    const { term, limit, page } = req.query;

    res.send(`Searching for: ${term}, Limit: ${limit}, Page: ${page}`);
});

Bu örnekte, parametreleri doğrudan çıkarmak için req.query nesnesini parçalıyoruz. Bu, kodu daha temiz ve daha okunabilir hale getirir.

Uç Noktanızı Test Etmek

Sunucunuzu yeniden başlatın ve tarayıcınızda aşağıdaki URL'ye gidin:

http://localhost:3000/search?term=nodejs&limit=10&page=2

"Searching for: nodejs, Limit: 10, Page: 2" mesajını görmelisiniz.

Sorgu Parametrelerini Doğrulamak

Sorgu parametrelerini işlemek harika olsa da, API'nizin doğru ve güvenli bir şekilde davrandığından emin olmak için bunları doğrulamak çok önemlidir. Sorgu parametrelerimize biraz doğrulama ekleyelim.

Örnek 3: Temel Doğrulama

Doğrulama mantığını dahil etmek için server.js dosyanızı güncelleyin:

app.get('/products', (req, res) => {
    const { category, price } = req.query;

    if (!category || !price) {
        return res.status(400).send('Missing category or price');
    }

    res.send(`Category: ${category}, Price: ${price}`);
});

Bu örnekte, category ve price sorgu parametrelerinin mevcut olup olmadığını kontrol ediyoruz. Herhangi biri eksikse, bir hata mesajıyla birlikte 400 durum kodu döndürüyoruz.

Uç Noktanızı Test Etmek

Sunucunuzu yeniden başlatın ve tarayıcınızda aşağıdaki URL'ye gidin:

http://localhost:3000/products?category=electronics&price=100

"Category: electronics, Price: 100" mesajını görmelisiniz.

Sorgu parametrelerinden biri olmadan URL'ye erişmeyi deneyin:

http://localhost:3000/products?category=electronics

"Missing category or price" hata mesajını görmelisiniz.

Middleware ile Gelişmiş Sorgu Parametresi İşleme

Express'teki middleware işlevleri, rotalarınıza ek işlevsellik eklemenin güçlü bir yoludur. Sorgu parametrelerini daha verimli bir şekilde nasıl işleyebileceğimize bakalım.

Örnek 4: Sorgu Parametresi Doğrulaması için Middleware

middleware.js adlı yeni bir dosya oluşturun ve aşağıdaki kodu ekleyin:

const validateQueryParams = (req, res, next) => {
    const { category, price } = req.query;

    if (!category || !price) {
        return res.status(400).send('Missing category or price');
    }

    next();
};

module.exports = validateQueryParams;

Bu middleware işlevinde, sorgu parametrelerini doğruluyoruz ve doğrulama başarılı olursa kontrolü bir sonraki middleware'e veya rota işleyicisine geçirmek için next() çağırıyoruz.

Middleware'i Rotalarınızda Kullanmak

Middleware'i kullanmak için server.js dosyanızı güncelleyin:

const validateQueryParams = require('./middleware');

app.get('/products', validateQueryParams, (req, res) => {
    const { category, price } = req.query;

    res.send(`Category: ${category}, Price: ${price}`);
});

Şimdi, validateQueryParams middleware'i, sorgu parametrelerinin doğrulandığından emin olarak, rota işleyicisinden önce yürütülecektir.

API Dokümantasyonu ve Test Etme için Apidog Kullanmak

Söz verdiğimiz gibi, Apidog hakkında konuşalım. API'lerinizi belgelemek ve test etmek için mükemmel bir araçtır. Apidog ile etkileşimli API dokümantasyonu oluşturabilir, uç noktalarınızı test edebilir ve her şeyin beklendiği gibi çalıştığından emin olabilirsiniz.

button

API Dokümantasyonu Oluşturmak

Express uygulamanız için API dokümantasyonu oluşturmak için Apidog'u kullanabilirsiniz. Proje içinde yeni bir API oluşturabilirsiniz. Dokümantasyon, REST API'sinin kaynaklarını, işlemlerini ve parametrelerini açıklayan bir taslağıdır. Yeni bir API oluşturmak için proje sayfasındaki "+" düğmesine tıklayın.

Apidog kullanarak bir REST API oluşturun

Apidog ile API'nizi Test Etmek

Dokümantasyonunuz kurulduktan sonra, API uç noktalarınızı doğrudan Apidog arayüzünden test edebilirsiniz. Bu, sorgu parametrelerinizin ve yanıtlarınızın doğru çalıştığını doğrulamayı kolaylaştırır.

HTTP yöntemlerini, istek/yanıt modellerini, sorgu parametrelerini, başlıkları vb. doldurun.

Apidog'da bir REST API oluşturmak için temel bilgileri doldurun

Tüm API'ler geliştirildikten sonra, API'lerinizi test etmek için "Gönder" düğmesine tıklayabilirsiniz.

Apidog'da REST API'sini test edin

Sorgu Parametreleriyle Çalışmak için En İyi Uygulamalar

Temel bilgileri ele aldığımıza göre, Node.js Express'te sorgu parametreleriyle çalışmak için bazı en iyi uygulamaları tartışalım.

Parametrelerinizi Doğrulayın: API'nizin güvenli ve güvenilir olduğundan emin olmak için her zaman sorgu parametrelerini doğrulayın. Kodunuzu temiz ve bakımı kolay tutmak için middleware kullanın.

Varsayılan Değerler Kullanın: API'nizi daha kullanıcı dostu hale getirmek için isteğe bağlı sorgu parametreleri için varsayılan değerler sağlayın. Bu, hatalardan kaçınmaya ve kullanıcı deneyimini iyileştirmeye yardımcı olabilir.

API'nizi Belgeleyin: API uç noktalarınızı ve sorgu parametrelerinizi belgelemek için Apidog gibi araçlar kullanın. Bu, diğer geliştiricilerin API'nizi anlamasını ve kullanmasını kolaylaştırır.

Hataları Zarif Bir Şekilde İşleyin: Sorgu parametreleri eksik veya geçersiz olduğunda anlamlı hata mesajları döndürün. Bu, kullanıcıların neyin yanlış gittiğini ve nasıl düzelteceklerini anlamalarına yardımcı olur.

Basit Tutun: Tek bir uç noktada çok fazla sorgu parametresi kullanmaktan kaçının. API'niz çok sayıda parametre gerektiriyorsa, daha iyi netlik ve kullanılabilirlik için bunu birden fazla uç noktaya bölmeyi düşünün.

Sonuç

Node.js Express'te sorgu parametrelerini işlemek, herhangi bir API geliştiricisi için temel bir beceridir. Bu kılavuzdaki örnekleri ve en iyi uygulamaları izleyerek, sağlam ve kullanıcı dostu API'ler oluşturmak için iyi bir donanıma sahip olacaksınız.

Ve unutmayın, Apidog, API geliştirme yolculuğunuzu daha sorunsuz hale getirmek için burada. Apidog'u ücretsiz indirin ve API'lerinizi bir profesyonel gibi belgelemeye ve test etmeye başlayın!

button

Explore more

Cursor ile Deepseek R1'i Yerel Olarak Nasıl Kullanılır

Cursor ile Deepseek R1'i Yerel Olarak Nasıl Kullanılır

Yerel DeepSeek R1'i Cursor IDE ile kurun ve yapılandırın. Özel, uygun maliyetli AI kodlama yardımı için.

4 June 2025

Android'de Gemma 3n Nasıl Çalıştırılır?

Android'de Gemma 3n Nasıl Çalıştırılır?

Google AI Edge Gallery'den Gemma 3n'i Android'e kurup çalıştırmayı öğrenin.

3 June 2025

GitHub Eylemleri ile Claude Kodunu Nasıl Kullanılır

GitHub Eylemleri ile Claude Kodunu Nasıl Kullanılır

Claude Code'u GitHub Actions ile entegre edin: Kod incelemeleri, hata düzeltmeleri ve özellik uygulamaları. Kurulum, iş akışları ve geliştiriciler için ipuçları.

29 May 2025

API Tasarım-Öncelikli Yaklaşımı Apidog'da Uygulayın

API'leri oluşturmanın ve kullanmanın daha kolay yolunu keşfedin