Node.js'de HTTP Web Sunucusu Oluşturma: Kod Örneğiyle Eğitim

Node.js çerçevesi çoğunlukla sunucu tabanlı uygulamalar oluşturmak için kullanılır. Çerçeve, kullanıcılara içerik sunabilen web sunucuları oluşturmak için kolaylıkla kullanılabilir.

Web sunucusu alanında sunucuyla ilgili isteklerin işlenmesine yardımcı olan “http” ve “request” modülü gibi çeşitli modüller vardır. kullanarak temel bir web sunucusu uygulamasını nasıl oluşturabileceğimize bir göz atacağız. js düğümü.

HTTP kullanan bir web sunucusu olarak Node

İlk Node js uygulamamızı nasıl oluşturup çalıştıracağımıza dair bir örneğe bakalım.

Uygulamamız 7000 no'lu port'u dinleyecek basit bir sunucu modülü oluşturacaktır. Bu port no'lu tarayıcı üzerinden istekte bulunulursa sunucu uygulaması istemciye 'Merhaba Dünya' yanıtı gönderecektir.

HTTP Kullanan Web Sunucusu Olarak Node

Kod Açıklama

  1. require fonksiyonunun temel işlevi, bir okuma yapmasıdır. JavaSenaryo dosyasını çalıştırır, dosyayı yürütür ve ardından dışa aktarma nesnesini döndürmeye devam eder. Yani bizim durumumuzda, http modülünün işlevselliğini kullanmak istediğimizden, uygulamamızda kullanılabilmesi için http modülünden istenen işlevleri almak için require işlevini kullanıyoruz.
  2. Bu kod satırında basit bir fonksiyona dayalı bir sunucu uygulaması oluşturuyoruz. Bu fonksiyon sunucu uygulamamıza her istek yapıldığında çağrılır.
  3. Bir istek alındığında '200' başlık tipinde bir yanıt gönderilmesini söylüyoruz. Bu sayı, istemciye başarılı bir yanıt gönderildiğinde http başlığında gönderilen normal yanıttır.
  4. Yanıtın kendisinde 'Merhaba Dünya' dizesini gönderiyoruz.
  5. Daha sonra sunucu uygulamamızın 7000 numaralı porttaki istemci isteklerini dinlemesini sağlamak için server.listen fonksiyonunu kullanıyoruz. Burada mevcut herhangi bir portu belirtebilirsiniz.

Komut başarıyla yürütülürse, kodunuzu tarayıcıda çalıştırdığınızda aşağıdaki Çıktı gösterilecektir.

Çıktı

HTTP Kullanan Web Sunucusu Olarak Node

Çıktıdan,

  • Eğer localhost'un 7000 numaralı bağlantı noktasındaki URL'sine göz atarsak, sayfada 'Merhaba Dünya' dizesinin görüntülendiğini açıkça görebilirsiniz.
  • Çünkü kodumuzda sunucunun 7000 nolu portta dinleme yapması için özel olarak belirttiğimiz bu url’ye göz atarken çıktıyı görüntüleyebiliyoruz.

İşte referansınız için kod

var http=require('http')
var server=http.createServer((function(request,response)
{
	response.writeHead(200,
	{"Content-Type" : "text/plain"});
	response.end("Hello World\n");
}));
server.listen(7000);

Node.js'de GET İsteklerini İşleme

Node.js'de başka bir siteden veri almak için bir GET İsteği yapmak nispeten çok basittir. Node'da bir Get isteği yapmak için öncelikle request modülünün kurulu olması gerekir. Bu, komut satırında aşağıdaki satırı çalıştırarak yapılabilir

npm yükleme isteği

Yukarıdaki komut, Node paket yöneticisinden gerekli istek modüllerini indirmesini ve uygun şekilde kurmasını ister.

Npm modülünüz başarıyla kurulduğunda, komut satırı kurulu modülün adını ve sürümünü gösterecektir: @ .

GET İsteklerini İşleme

Yukarıdaki anlık görüntüde 'request' modülünün 2.67.0 sürüm numarasıyla birlikte indirilip kurulduğunu görebilirsiniz.

Şimdi bu 'request' komutunu kullanabilecek kodu görelim.

GET İsteklerini İşleme

Kod Açıklama

  1. Son adımda kurduğumuz 'request' modülünü kullanıyoruz. Bu modül, web sitelerine GET istekleri yapmak için kullanılabilecek gerekli işlevlere sahiptir.
  2. www.google.com'a bir GET İsteği yapıyoruz ve ardından bir yanıt alındığında bir fonksiyonu çağırıyoruz. Bir yanıt alındığında parametreler (hata, yanıt ve gövde) aşağıdaki değerlere sahip olacak
    1. Hata – GET isteği kullanılırken herhangi bir hata alınması durumunda buraya kaydedilecektir.
    2. Yanıt - Yanıt, yanıtta geri gönderilen http başlıklarını içerecektir.
    3. Gövde - Gövde, Google tarafından gönderilen yanıtın tüm içeriğini içerecektir.
  3. Bunda sadece body parametresinde alınan içeriği console.log dosyasına yazıyoruz. Yani temel olarak, giderek ne elde edersek edelim www.google.com console.log'a yazılacaktır.

İşte referansınız için kod

var request = require("request");
	request("http://www.google.com",function(error,response,body)
	{
		console.log(body);
	});

ÖZET

  • Node.js çerçevesi, 'http' modülünü kullanarak web sunucuları geliştirmek için kullanılabilir. Uygulama belirli bir bağlantı noktasını dinleyecek ve uygulamaya her istek yapıldığında istemciye yanıt gönderecek şekilde yapılabilir.
  • Web sitelerinden bilgi almak için 'request' modülü kullanılabilir. Bilgiler, ilgili web sitesinden talep edilen web sayfasının tüm içeriğini içerecektir.

Günlük Guru99 Bülteni

Gününüze, şu anda elinize ulaşan en son ve en önemli yapay zeka haberleriyle başlayın.