Merhaba Arkadaşlar,
Bir önceki makalede TMS Web Core ürününün nasıl bir ürün olduğu hakkında genel bir bakış edinmiştik. Bu makalede de JSON veri okuma ile ilgili bir örnek yapacağız. WebCore, doğası gereği JSON ve REST servisleri ile çalışmak için hazır bileşenler ile geliyor. Peki neden JSON'u seçtim? Çünkü şu anda web servislerde XML-SOAP kullanımı yavaş yavaş yerini JSON'a bırakıyor. Örneğin, Biz kendi yaptığımız yazılımın Trendyol'a ürün yollama, bilgi güncelleme vb. tüm işlemlerini JSON ile hallediyoruz. O yüzden JSON Önemli.
öncelikle, bu makalede tüm dünyada yazılımcıların test ve prototip aşamalarında kullanabileceği JSON örnekleri barındıran aşağıdaki ücretsiz web servisini kullanacağız :
https://jsonplaceholder.typicode.com
Bu sitede aşağıdaki örnek JSON verileri var :
Burada da ben kendime örnek olarak "Albums" servisi üzerinden albüm isimlerini çekeceğim. Bu şekilde sorguladığımda aşağıdaki bir JSON verisi beni karşılıyor:
Bu JSON verisinden örneğin "Title" yani "Başlık" değerlerini alıp ekranda bir liste kutusunda gösterelim.
Bunun için TMS WEB REST sekmesinde en başta TWebHTTPRequest nesnesini formumuza yerleştirelim :
TWebHttpRequst'in verileri okuduktan sonra "Response" , yani sonuç verilerini hangi veri türünde, nasıl istediğimizi de belirleyebiliriz :
Ben "Default" olarak bıraktım.
Peşinden formuma Bir adet buton ve bir adet de WebListBox ekliyorum. Formumuz aşağıdaki gibi basit bir form olacak :
"Kayıtları Oku" dediğim butonun OnClick olayına aşağıdaki kodu yazıyorum:
Peşinden, WebHttpRequest1 bileşenimizin "Response" olayına, aşağıdaki kodu ekliyorum. Bu kod, yukarıda bahsettiğim web servisinden albümlerin title değerlerini alarak liste kutumuza ekleyecek ve mesaj olarak da kaç tane başlık eklediğini bildirecek :
Uygulamamı çalıştırıp da Butona tıkladığımda önce kaç tane kayıt okuduğunu söyleyecek :
ve peşinden de forma eklediğimiz liste kutusunda her bir albüm başlığını listeleyecektir :
Görüldüğü üzere çok çok basit ve kolay bir şekilde JSON verimizi kullanabildik.
JSON dışında normal veritabanları ve REST servislerine bağlanıp veri çekebilmek için TMS Web Core'un WebRequest dışında aşağıdaki bileşenleri de var :
ve sonrasında Edit'ten Liste kutularına, Combobox'tan Grid'e kadar aklınıza gelebilecek her türden veri gösterimi bileşeni de mevcut.
Bu makalede TMS Web Core ile basitçe bir JSON web servisinden veri okumayı anlatmaya çalıştım. Görüldüğü gibi, çok basit şekilde kullanabiliyoruz. Web Core'un diğer uygulama geliştirme tiplerinde (Mesela TMS Web Core - Miletus Application) şeklinde bir proje geliştirdiğinizde native olarak bazı veritabanlarına da bağlanabiliyorsunuz. Ama uzunca bir süredir geliştirdiğimiz tüm projelerde native (doğrudan) bir bağlantı ihtiyacı hiç duymadık. JSON hem XML Web servislerine göre daha az yer kapladığı hem de veri alma/gönderme süreçleri çok hızlı olduğu için şu anda tüm projelerimizde baştacı konumunda. Üstelik şu anda çoğu API sağlayan web hizmeti de (Mesela Trendyol) sadece JSON kabul ediyor ve sadece JSON olarak örnekler veriyorlar.
Dolayısı ile, TMS Web Core'un sunduğu bu işlevsellik bize yetiyor ve artıyor bile.
Buraya kadar okuduysanız teşekkür ederim. Bu ürüne çok inanıyorum, IntraWeb'ten UniGUI'ye geçtiğimde yaşadığım o inanılmaz hissi şu anda UniGUI'den TMS Web Core'a geçtiğim günden beri yaşıyorum. TMS'de bu ürüne çok eğiliyor. Harika bir dökümantasyon var. 900 sayfalık geliştirici rehberi PDF si var. Ayrıca haricen "TMS Web Core" isimli yazılmış bir kitap var. Bir de TMS Web Core için yapılmış harika bir görüntülü eğitim seti var. Yani ürünün gidişatı çok iyi.
Bu da şu demek, TMS Web Core ile ilgili makale serimiz devam edecek
Sevgiler, Saygılar.
Bir önceki makalede TMS Web Core ürününün nasıl bir ürün olduğu hakkında genel bir bakış edinmiştik. Bu makalede de JSON veri okuma ile ilgili bir örnek yapacağız. WebCore, doğası gereği JSON ve REST servisleri ile çalışmak için hazır bileşenler ile geliyor. Peki neden JSON'u seçtim? Çünkü şu anda web servislerde XML-SOAP kullanımı yavaş yavaş yerini JSON'a bırakıyor. Örneğin, Biz kendi yaptığımız yazılımın Trendyol'a ürün yollama, bilgi güncelleme vb. tüm işlemlerini JSON ile hallediyoruz. O yüzden JSON Önemli.
öncelikle, bu makalede tüm dünyada yazılımcıların test ve prototip aşamalarında kullanabileceği JSON örnekleri barındıran aşağıdaki ücretsiz web servisini kullanacağız :
https://jsonplaceholder.typicode.com
Bu sitede aşağıdaki örnek JSON verileri var :
Burada da ben kendime örnek olarak "Albums" servisi üzerinden albüm isimlerini çekeceğim. Bu şekilde sorguladığımda aşağıdaki bir JSON verisi beni karşılıyor:
Bu JSON verisinden örneğin "Title" yani "Başlık" değerlerini alıp ekranda bir liste kutusunda gösterelim.
Bunun için TMS WEB REST sekmesinde en başta TWebHTTPRequest nesnesini formumuza yerleştirelim :
TWebHttpRequst'in verileri okuduktan sonra "Response" , yani sonuç verilerini hangi veri türünde, nasıl istediğimizi de belirleyebiliriz :
Ben "Default" olarak bıraktım.
Peşinden formuma Bir adet buton ve bir adet de WebListBox ekliyorum. Formumuz aşağıdaki gibi basit bir form olacak :
"Kayıtları Oku" dediğim butonun OnClick olayına aşağıdaki kodu yazıyorum:
Kod: (Select All)
WebHttpRequest1.URL := 'https://jsonplaceholder.typicode.com/albums';
WebHttpRequest1.Execute;
Peşinden, WebHttpRequest1 bileşenimizin "Response" olayına, aşağıdaki kodu ekliyorum. Bu kod, yukarıda bahsettiğim web servisinden albümlerin title değerlerini alarak liste kutumuza ekleyecek ve mesaj olarak da kaç tane başlık eklediğini bildirecek :
Kod: (Select All)
Procedure TForm1.WebHttpRequest1Response(Sender: TObject, AResponse: string);
var
js : TJSON;
ja : TJSONArray;
jo : TJSONObject;
i : integer;
begin
js := TJSON.Create;
try
ja := TJSONArray(js.Parse(AResponse));
ShowMessage('Alınan Kayıtlar :' + inttostr(ja.Count));
for i := 0 to ja.Count - 1 do
begin
jo := TJSONObject(ja.Items[i]);
WebListBox1.Items.Add(jo.GetJSONValue('title'));
end;
finally
js.Free;
end;
end;
Uygulamamı çalıştırıp da Butona tıkladığımda önce kaç tane kayıt okuduğunu söyleyecek :
ve peşinden de forma eklediğimiz liste kutusunda her bir albüm başlığını listeleyecektir :
Görüldüğü üzere çok çok basit ve kolay bir şekilde JSON verimizi kullanabildik.
JSON dışında normal veritabanları ve REST servislerine bağlanıp veri çekebilmek için TMS Web Core'un WebRequest dışında aşağıdaki bileşenleri de var :
ve sonrasında Edit'ten Liste kutularına, Combobox'tan Grid'e kadar aklınıza gelebilecek her türden veri gösterimi bileşeni de mevcut.
Bu makalede TMS Web Core ile basitçe bir JSON web servisinden veri okumayı anlatmaya çalıştım. Görüldüğü gibi, çok basit şekilde kullanabiliyoruz. Web Core'un diğer uygulama geliştirme tiplerinde (Mesela TMS Web Core - Miletus Application) şeklinde bir proje geliştirdiğinizde native olarak bazı veritabanlarına da bağlanabiliyorsunuz. Ama uzunca bir süredir geliştirdiğimiz tüm projelerde native (doğrudan) bir bağlantı ihtiyacı hiç duymadık. JSON hem XML Web servislerine göre daha az yer kapladığı hem de veri alma/gönderme süreçleri çok hızlı olduğu için şu anda tüm projelerimizde baştacı konumunda. Üstelik şu anda çoğu API sağlayan web hizmeti de (Mesela Trendyol) sadece JSON kabul ediyor ve sadece JSON olarak örnekler veriyorlar.
Dolayısı ile, TMS Web Core'un sunduğu bu işlevsellik bize yetiyor ve artıyor bile.
Buraya kadar okuduysanız teşekkür ederim. Bu ürüne çok inanıyorum, IntraWeb'ten UniGUI'ye geçtiğimde yaşadığım o inanılmaz hissi şu anda UniGUI'den TMS Web Core'a geçtiğim günden beri yaşıyorum. TMS'de bu ürüne çok eğiliyor. Harika bir dökümantasyon var. 900 sayfalık geliştirici rehberi PDF si var. Ayrıca haricen "TMS Web Core" isimli yazılmış bir kitap var. Bir de TMS Web Core için yapılmış harika bir görüntülü eğitim seti var. Yani ürünün gidişatı çok iyi.
Bu da şu demek, TMS Web Core ile ilgili makale serimiz devam edecek
Sevgiler, Saygılar.
Firebird Ekipler Amiri. Dmitry Kouzmenko ve Dmitry Yemanov ile çalışmış , Eski IBSurgeon personeli, Kıdemli Firebird Kurtarma Uzmanı, Firebird Foundation bağışçısı...