Node.JS

NodeJS http Modülü

Herkese merhaba, NodeJS yazılarımıza kaldığımız yerden devam ediyoruz. Bu yazımızda http modülünü anlatacağım. Hadi başlayalım !

Node.js, JavaScript tabanlı bir platformdur ve HTTP işlemlerini gerçekleştirmek için hazır bir modül olan http modülünü içerir. Bu modül, Node.js sunucusu tarafından oluşturulan bir HTTP sunucusunu yönetir ve aynı zamanda HTTP istekleri yapmak için de kullanılabilir.

HTTP protokolü, internet üzerinden veri transferi için kullanılır. HTTP, istemci-sunucu modeli üzerinde çalışır ve istemci tarafından gönderilen istekler, sunucu tarafından işlenir ve sonuçlar geri gönderilir. Node.js sunucusu, bu istemci-sunucu modelini uygulayarak HTTP isteklerini yönetir.

Node.js http modülü, bu istemci-sunucu modelini uygulamak için kullanılan bir araçtır. Bu modül, bir HTTP sunucusu oluşturmak için kullanılabilir veya bir HTTP isteği yapmak için kullanılabilir. Bu modül, HTTP isteklerini oluşturma, işleme ve yanıt alma işlemlerini gerçekleştirir.

HTTP İstekleri

Node.js http modülü, HTTP istekleri yapmak için kullanılabilir. Bu istekler, get, post, put, delete ve head gibi çeşitli yöntemlerle yapılabilir. Bu yöntemler, isteğin tipini belirtir.

HTTP GET İsteği

HTTP GET isteği, bir sunucudan veri almak için kullanılır. Bu istek, bir URL ve istek başlıklarını içerir. Aşağıdaki örnek, Node.js http modülünü kullanarak bir HTTP GET isteği yapar:

const http = require('http');

http.get('http://www.example.com/', (res) => {
  console.log(`statusCode: ${res.statusCode}`);
  
  res.on('data', (chunk) => {
    console.log(chunk.toString());
  });
}).on('error', (error) => {
  console.error(error);
});

Bu kod örneği, http.get yöntemi kullanılarak bir HTTP GET isteği yapar. İstek, ‘http://www.example.com/’ URL’sine gönderilir ve sunucudan gelen yanıtı konsola yazdırır.

HTTP POST İsteği

HTTP POST isteği, bir sunucuya veri göndermek için kullanılır. Bu istek, bir URL, istek başlıkları ve gönderilecek veri içerir. Aşağıdaki örnek, Node.js http modülünü kullanarak bir HTTP POST isteği yapar:

const http = require('http');

const data = JSON.stringify({
  message: 'Hello, World!'
});

const options = {
  hostname: 'localhost',
  port: 8080,
  path: '/message',
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Content-Length': data.length
  }
};

const req = http.request(options, (res) => {
  console.log(`statusCode: ${res.statusCode}`);
  
  res.on('data', (chunk) => {
    console.log(chunk.toString());
  });
});

req.on('error', (error) => {
  console.error(error);
});

req.write(data);
req.end();

Bu kod örneği, http.request yöntemi kullanılarak bir HTTP POST isteği yapar. İstek, ‘localhost’ adresindeki 8080 numaralı porta gönderilir ve ‘/message’ yoluna gönderilir. İstek başlıkları, JSON verisi gönderildiğini belirtir. Sunucudan gelen yanıt konsola yazdırılır.

HTTP Sunucusu

Node.js http modülü, bir HTTP sunucusu oluşturmak için kullanılabilir. Bu sunucu, HTTP isteklerini dinler ve yanıtlar. HTTP sunucusu, listen metodu kullanılarak oluşturulur. Bu yöntem, sunucunun hangi portta dinleneceğini ve istekleri nasıl işleyeceğini belirtir.

Aşağıdaki örnek, Node.js http modülünü kullanarak bir HTTP sunucusu oluşturur:

const http = require('http');

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Hello, World!');
});

server.listen(8080, () => {
  console.log('Server running on port 8080');
});

Bu kod örneği, http.createServer yöntemi kullanılarak bir HTTP sunucusu oluşturur. Sunucu, gelen her isteğe ‘Hello, World!’ yanıtı verir. Sunucu, 8080 numaralı porta dinler.

HTTP Sunucusu İsteği İşleme

HTTP sunucusu, gelen istekleri işlemek için bir fonksiyon kullanır. Bu fonksiyon, istekleri ve yanıtları işleyen bir callback fonksiyonudur. Aşağıdaki örnek, Node.js http modülünü kullanarak bir HTTP sunucusu oluşturur ve istekleri işler:

const http = require('http');

const server = http.createServer((req, res) => {
  if (req.method === 'GET' && req.url === '/') {
    res.statusCode = 200;
    res.setHeader('Content-Type', 'text/plain');
    res.end('Hello, World!');
  } else {
    res.statusCode = 404;
    res.setHeader('Content-Type', 'text/plain');
    res.end('Not found');
  }
});

server.listen(8080, () => {
  console.log('Server running on port 8080');
});

Bu kod örneği, http.createServer yöntemi kullanılarak bir HTTP sunucusu oluşturur. Sunucu, gelen isteği kontrol eder ve istek yöntemi ve URL’si ‘GET’ ve ‘/’ ise ‘Hello, World!’ yanıtı verir. Diğer tüm istekler için ‘Not found’ yanıtı verilir.

Sonuç

Node.js http modülü, HTTP isteklerini yapmak ve HTTP sunucularını oluşturmak için kullanışlı bir araçtır. Bu modül, HTTP protokolünü yönetmek için gerekli işlevleri içerir. Node.js http modülü, JavaScript tabanlı bir platformda HTTP işlemleri gerçekleştirmek için harika bir araçtır.

Evet NodeJS http modülü bu şekilde idi. Tüm NodeJS yazılarımıza buraya tıklayarak ulaşabilirsiniz. Herkese hayırlı günler.

Skorumuz:
Oy Vermek İçin Tıklayın
[Toplam: 0 Ortalama: 0]

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu