Node.Js Web Sitesine İstek Gönderme

Merhabalar, Node.JS derslerimize devam ediyoruz. Bu dersimizde Node.JS ile web sitesine post ve get isteği gönderme işlemlerini anlatacağım. Hadi başlayalım !
Bu yazımı bilgisayarınızda Node.JS kurulu olduğunu düşünerek devam ediyorum, kurmadıysanız Windows için buraya, Linux için buraya ve MacOS için buraya tıklayabilirsiniz. Evet Node.JS kurulumundan sonra asıl konumuza devam edelim.
Herşeyden önce bir tane Node.JS projesi oluşturalım. Bunun için terminal (Windows için CMD) ile projeyi oluşturacağınız klasöre geçip
npm init --yes
komutunu girelim ve komutun tamamlanmasını bekleyelim. Ardından proje klasörü içerisine index.js adında bir tane dosya oluşturarak bu dosyayı açalım.
Bu yazımızda https paketini kullanacağız. Bu paket Node.JS kurulumu ile geldiği için yeniden kurmaya gerek yok, direk kullanabiliriz. Tabi herşeyden önce https paketini index.js dosyamızda çağırmamız gerekiyor. Bunun için sayfanın başına
const https = require('https');
kod satırını ekleyelim ve paketimizi kullanılabilir hale getirelim. https paketi ile istek gönderebilmek için paket içerisinde bulunan request() fonksiyonunu kullanacağız. Bu fonksiyon istek gönderilecek web adresinin bilgilerini parametre olarak alıyor ve tek parametreli bir callback fonksiyonu bulunuyor. Örneğin ben https://jsonplaceholder.typicode.com/todos/1 adresindeki veriyi çekeceğim. Öncelikle web adresinin bilgilerini belirleyelim.
const options = {
hostname: 'jsonplaceholder.typicode.com',
port: 443,
path: '/todos/1',
method: 'GET',
};
method kısmında göndereceğimiz metodun tipini belirliyoruz ve biz doğrudan veri çekeceğimiz için GET isteği gönderdik fakat PUT, DELETE, POST gibi diğer metodlarıda kullanabilirsiniz. Ayrıca JSON tipinde olmak üzere headers değeri ekleyerek parametreli ve header göndererek istektede bulunabilirsiniz. Evet artık hazırlıklarımız tamamlandı, isteğimizi gönderebiliriz.
const req = https.request(options, (res) => {
console.log("Status Code: " + res.statusCode);
res.on('data', data => {
console.log(data.toString());
});
});
Evet https ile istek gönderme bu kadardı, callback fonksiyon içerisindeki res ve data eventi ile gönderdiğiniz isteğe dair istediğiniz işlemleri yapabilirsiniz. Bu dersimizde bu kadardı, yazdığımız kodu ve biraz daha fazlasını (parametreli istek) aşağıya bırakıyorum.
const https = require('https');
const options = {
hostname: 'jsonplaceholder.typicode.com',
port: 443,
path: '/todos/1',
method: 'GET'
};
const data = JSON.stringify({
parametre1: 'value 1',
parametre2: 'value 2'
});
const req = https.request(options, (res) => {
console.log('Status Code: ' + res.statusCode);
res.on('data', data => {
console.log(data.toString());
});
});
req.write(data);
req.end();
Tüm Node.JS derslerimize buraya tıklayarak ulaşabilirsiniz. Herkese hayırlı günler.