NodeJS Web Sunucusu Oluşturmak için ilk olarak bilgisayarınıza NodeJS kurulu olması gerekiyor. Bu kurulumu henüz yapmadıysanız Mac OS X için bu kurulumun nasıl yapılacağını anlattığım yazımı belki okumak isteyebilirsiniz. Şimdi gelelim sunucu oluşturmak için yapmamız gerekenlere. Web sunucusu derken şunu kast ediyorum şimdilik çok basit bir web sayfası oluşturacağız içerisinde sadece 1 satır metin olacaktır. Bu metni bilgisayarımızda bulunan herhangi bir web tarayıcı ile okuyacağız.
İlk olarak kodları yazacağımız bir Javascript dosyası oluşturmanız gerekmektedir. Bunu istediğiniz dosya adı ile istediğiniz klasörde yapabilirsiniz. Ben Masaüstünde oluşturduğum bir klasörde, test.js adında bir dosya oluşturdum ve bu dosyayı Visual Studio Code ile düzenleyeceğim.
Javascript modüllerinden olan http modülünü httpModulu adında bir değişkene atadım. Bu değişkene ait daha doğrusu http modülüne ait createServer fonksiyonunu kullandım. Bu fonksiyon bilgisayarınızı localde bir Http sunucuya çevirir. Bu fonksiyonun içerisine yazacağımız fonksiyonu istemciler yapmış olduğu her istekte sunucumuz çalıştıracaktır.
Oluşturmuş olduğum fonksiyonda request (istek) ve response (cevap) bilgilerini rahatlıkla yakalayabilirim. Kullanıcıya yapmış olduğu istek sonrasında göndermek istediğiniz cevabu response.end fonksiyonu içerisine yazarak gönderebilirsiniz. Bu uygulamayı bilgisayarda tanımlı olan hangi portta yayınlayacağınızı da listen fonksiyonu içerisine parametre olarak verebilirsiniz.
Bu sunucuyu ayaklandırmak için yani kodu çalıştırmak için terminale node yazıyoruz ve ardından bu Javascript dosyasının adını veriyoruz. Bu komutu Javascript dosyasının bulunduğu klasörde yapmanız gerekmektedir.
NodeJS Web Sunucusu Oluşturmak Kodları:
var httpModulu = require('http')
moduleAdi.createServer(function(request,response){
response.end('Merhaba, ben Ege !')
}).listen(8081)
Sunucuyu ayaklandırdıktan sonra localhost:8081 adresine girerek sunucunun cevabını görebilirsiniz.
Şimdi gelelim Ege olarak belirtmiş olduğum ismi parametreye bağlamaya. Yani sunucuya yapılan isteğe göre bir cevap döndürmeye. Bunu yaparken http request header bilgisini de kullanacağım. Query string olarak isim bilgisini de sunucudan istekte bulunurken gönderildiğini düşünüyorum. Eğer gönderilmedi ise bu bilginin bulunmadığını ekrana yazdıracağım ve yetkisiz giriş olduğunu dile getireceğim.
Yukarıdaki çıktıyı almak için kodu şu şekilde güncelledim:
var httpModulu = require('http')
var url = require('url');
httpModulu.createServer(function(request,response){
var queryData = url.parse(request.url, true).query;
if(queryData.isim){
response.writeHead(200, {"Content-Type": "text/plain"});
response.end('Merhaba, ben '+queryData.isim+' !')
}
else{
response.writeHead(401, {"Content-Type": "text/plain"});
response.end("Ad bilgisi girilmedi")
}
}).listen(8081)
Çocukluğumdan beri arabalara olan ilgim babam sayesinde başlamıştır. Araba manyağı seviyesinde bir ilgim var ancak bunu her ortamda dile getirmem. Teknolojiye ve bilgisayara olan ilgim kendimi tanımaya başladım başlayalı oldu. Şimdi ise kendimce kod yazabilen bir bilgisayar mühendisi olarak çalışıyorum.
2022 yılı içerisinde Apple yenilenen iPad modellerini karşımıza çıkarttı. Ancak hepimizin beklediği iPad modeli 2022… Daha fazla oku
Günümüz şartlarında neredeyse her Apple ürünü iCloud Etkinleştirme kilidi özelliğine sahiptir. Bu kilit bir çok… Daha fazla oku
Apple sattığı cihazlardan para kazandığı kadar servisleri ile de para kazanan bir firma olmuştur. Son… Daha fazla oku
Elmadan haberler 3 içerisindeki gündem şu şekildedir: Apple TV Android Akıllı Cep Telefonu ve Tabletlere… Daha fazla oku
iPhone Güncelleme sonrası pil sağlığı neden düşer son derece fazla aldığım diğer bir sorudur. Bu… Daha fazla oku
Bilinçli iPhone Kullanıcısı video serisi kapsamında iPhone iOS 16.2 ipuçları bu yazıda ele alacağım bir… Daha fazla oku
Bu web site kullanıcı deneyimini arttırmak amacı ile çerezleri kullanmaktadır