IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   Node.JS (https://www.ircforumlari.net/nodejs/)
-   -   Node JS ile Veri Çekme İşlemleri (https://www.ircforumlari.net/nodejs/922508-node-javascript-ile-veri-cekme-islemleri.html)

CeRoN 26 Haziran 2021 11:44

Node JS ile Veri Çekme İşlemleri
 
Node JS ile oluşturduğumuz sunucu üzerinde çalışacak ve kur değerlerini JSON metninin içerisinden çeken ve bunu bize gösteren web uygulaması gerçekleştirmiş olacağız.

1) Öncelikle bilgisayarımıza[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]‘i kuruyoruz.

2) Kurulum gerçekleştikten sonra bilgisayarımızda bir klasöre girerek istediğimiz isimde bir .js uzantılı dosya (isterseniz node js ile de bu dosyayı komut satırı üzerinden oluşturabilirsiniz) oluşturuyoruz.

3) Cmd(komut satırı) üzerinden oluşturduğumuz .js uzantılı dosyanın konumuna ulaşıyoruz. (>cd “bulunduğu konum”)

4) Öncelikle Node JS ile kullanacağımız modülleri npm install modül adı komutuyla yüklememiz gerekli. Bizim kullanacaklarımız aşağıdadır:

>npm install request

>npm install body-parser

>npm install express

Bu üç modülü kullanacağız.

Aşağıdaki kod bloğunu kendi oluşturduğunuz .js içerisine atıp cmd üzerinden node oluşturduğumdosya.js şeklinde çalıştırdığınızda sunucumuz localhost üzerinden çalışacak ve web tarayıcıya [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] yazdığımızda sayfamız gelecektir.

Bu işlemlerin çıktısı aşağıdaki gibidir; Running at Port 5000 üzerinden localhost’un başarılı şekilde çalıştığını göstermektedir.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Şimdi tarayıcıya [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] yazdığımızda fotoğraftaki çıktıyı almalıyız.

HTML,CSS ve JAVASCRİPT kullanımı kod içerisindedir.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Kod içerisinde sizlere verilmesi gereken bilgileri yorum satırı olarak ekledim. Kodu anlamanıza yardımcı olacaktır. Sorularınızı soru sor kısmından iletebilirsiniz.

Kod:

var request=require('request');//istek için kullanılır.
var bodyParser=require('body-parser');
var express=require('express');//express yöntemi kullanılır.
var app=express();//app oluşturulur.
app.get('/',function(req,res){//get komutu ile istek alınır. kök dizininde işlenir.
var url=`https://api.canlidoviz.com/web/items?marketId=1&type=0`;//hocanın verdiği link url de tutulur.
request(url,function(error,response,body){//request işlemi için gerekli kontroller yapılır
if(!error&&(response.statusCode==200))//doğru çalıştığını gösterir.
{var kur=JSON.parse(body);//body den json parse edilir.
var kurStr=JSON.stringify(kur);//stringify ile çevrilerek karşı tarafa yollanır.
if(kur[0].name==undefined)//var olup olmadığı kontrol edilir.
res.send('JSON nesnesi yoktur.');//gerekli hata verilir.
else{
res.writeHead(200,{"Content-Type":"text/html"});
var gonder;var i=0;//gerekli tanımlamalar.
for(nesne of kur){//özel for ile nesne değişkeni içine atılan nesne ile name kısmı alınır.
gonder+="<option value="+i+">"+nesne.name+"</option>";//select in içi gonder ile doldurulacak.
i++;//option value değeri tutulur.
}res.write('<html><meta charset="utf-8"><body>'+//res.write ile html css ve javascript string şeklinde yazılır.
'<title>Coded By Metehan</title>'+
'<div style=" width:50%; height:51%; background-color: rgb(245,245,245) ">'+
'<h2 style=" width:60%; height:4% ">Node JS ile Kur İşlemleri (Veri Çekme)</h2>'+//kurlar
'<div style="margin-top:0%; width:10%; height: 48% "><select id="kurlar" size="'+25+'" onchange="func()">'+//select yapısı
'document.write("'+gonder+'");'+//optionlar bastırılır.
'</select></div>'+//select yapısı sonlanır.
'<div style=" margin-left:20%; margin-top:-25%; text-align:left; width:50%; height: 52% ">'+
'<br><h3 >Kur İsmi :<label id="id1"></label></h3><br>'+//istenilen Kur İsmi html ile gösterilir.
'<h3 >Alış :<label id="id2"></label></h3><br>'+//istenilen Alış html ile gösterilir.
'<h3 >Satış :<label id="id3"></label></h3><br>'+//istenilen Satış değeri html ile gösterilir.
'<h3 >Yüzde Değişim :<label id="id4"></label></h3><br>'+//istenilen Yüzde Değişim değeri html ile gösterilir.
'<h3 >Döviz Kodu :<label id="id5"></label></h3><br>'+//istenilen Döviz Kodu html ile gösterilir.
'</div>'+
'<script>'+//script ile javascript işlemleri gerçekleştirilir.
'function func(){'+//func ile istenilen veriler onchange özelliği ile sayfa da gösterilir.
'var atama;'+
'var arrayJSON='+kurStr+';'+//kurStr stringi html de tutulur.
'var idkurlar = document.getElementById("kurlar");'+//onchange den gelen value değeri belirlenir.
'var select_value = idkurlar.options[idkurlar.selectedIndex].value;'+
'for (var i = 0; i < arrayJSON.length; i++) {'+//arrayjsonda dönülür.
'if (select_value==i) {'+//doğru değerler ekrana bastırılır.
'document.getElementById("id1").innerHTML=arrayJSO N[i].name;'+//id lere atama yapılır.
'document.getElementById("id2").innerHTML=arrayJSO N[i].buyPrice;'+//id lere atama yapılır.
'document.getElementById("id3").innerHTML=arrayJSO N[i].sellPrice;'+//id lere atama yapılır.
'document.getElementById("id4").innerHTML=arrayJSO N[i].dailyChangePercentage;'+//id lere atama yapılır.
'document.getElementById("id5").innerHTML=arrayJSO N[i].code;'+//id lere atama yapılır.
'}'+
'}'+
'}'+
'</script>'+//script kapatılır.
'<button id="btn" onclick="location.reload()" style="margin-left:50%; margin-top:15%;">Kuru Yenile</button>'+//yenileme butonu
'</div>'+
'</body></html>');//html tagı kapatılır.
res.end();//sonlandırılır.
}
}
else
res.send('Veri yok.');
});});
app.listen(5000,function(){console.log('Node.js Web Server is Running at Port 5000.');});//dinleme yapılır.

Sorularınız için, burdan iletişime geçebiliriz.
Herkese hayırlı forumlar IF ailesi.


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 15:47.

Powered by vBulletin® Version 3.8.8 Beta 3
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2024 IRCForumlari.Net