29 Haziran 2013 Cumartesi

Web Servis ile TC Kimlik No Doğrulama

      Merhabalar, şimdi web servis kullanarak tc kimlik numaramızın doğrulamasını yapacağız. Web servisin ne olduğuna bakalım öncelikle; Web servisler modern internet döneminin XML mesajlaşma tabanlı entegrasyon yöntemi ya da diğer bir deyişle api’leridir. Web servisler çok amaçlı kullanılabilirler. Öncelikli amaçlar arasında, farklı sistemlerin birbirine entegrasyonu – mesajlaşması bulunmaktadır. Veri alışveriş yöntemine ait standartlar olduğundan dolayı web servisler platform bağımsızdır. Yani, .Net ile yazılan bir web servis java uygulamalarında kullanılabildiği gibi, java ile yazılmış bir web servis aynı mantıkla, .Net uygulamalarında ve ASP.Net web sitelerinde kullanılabilir.
      Uygulamaya geçelim şimdi de. Öncelikle Google’a tc no doğrula yazarak https://tckimlik.nvi.gov.tr/ sitesine giriyoruz.


      Resimde işaretli olan yerde sitenin bizim kullanmamıza izin vermiş olduğu web servisi görmekteyiz. Son olarak da şunu belirteyim bu uygulamayı isterseniz Asp.Net’de isterseniz Windows Form Uygulaması olarak yapabilirsiniz. Ben form uygulaması yapacağım şimdi. Form üzerine 4 textbox, 5 label ve 1 buton ekliyoruz. Uygulamamızın görüntüsü şu şekilde olacak..


      İlk olarak Solutions Explorer’daki References’a sağ tıklayıp Add Service Reference diyoruz ve açılan penceredeki adres kısmına https://tckimlik.nvi.gov.tr/Service/KPSPublic.asmx?WSDL linkini yapıştırıyoruz ve GO butonuna basıyoruz.  Bu butona tıklayınca web servis üzerinden kullanabileceğimiz fonksiyonlar görünmektedir.  İsterseniz resim üzerinde işaretli olan yerden servisin ismini değiştirebilirsiniz. Ben değiştirmedim, eğer değiştirirseniz kodlarda ServiceReference1 yazan yere verdiğiniz ismi yazacaksınız.


Daha sonra ise butonun click event’ına şu kodları yazıyoruz:

var client = new ServiceReference1.KPSPublicSoapClient();

var cevap = client.TCKimlikNoDogrula
            (Convert.ToInt64(textBox1.Text), textBox2.Text.Trim().ToUpper(),
             textBox3.Text.Trim().ToUpper(), Convert.ToInt32(textBox4.Text));

label1.Text = "Sonuc : " + cevap.ToString();


      Öncelikle eklediğimiz web servisin fonksiyonlarına ulaşmak için istemciye (client) ait client adında bir nesne tanılmıyoruz ve daha sonra bu istemci ile servisin TCKimlikNoDogrula fonksiyonuna ulaşıyoruz. Bu fonksiyon bize boolean türünde yani true yada false şeklinde bir cevap gönderiyor. Biz bunu cevap isminde bir değişkene atıyoruz ve en son olarak da bunu label ile ekranda görüntülüyoruz.
      Web servisleri her zaman kullanabileceğimiz bir teknolojidir ve bence kesinlikle öğrenilmesi gerekmektedir. Siz uygulama geliştirdiğiniz şirketin web servislerini kullanarak uygulamanızın şirketin sistemi ile entegre bir şekilde çalışmasını sağlamış olacaksınız. Bu örnekleri artırmak tabii ki de mümkün, tavsiyem öğrenmenizdir arkadaşlar, herkese iyi çalışmalar...


2 yorum:

  1. Merhaba,

    Paylaşım için teşekkürler. Bu konuda bir sorunum var. Herşeyi sizin dediğiniz gibi yaprtım. Localhost'ta sorunsuz çalışan kodlar web'de hata veriyor. Bunun nedeni ne olabilir? Hosting firmam Amerika menşeli, datacenter'lar da orada. Nedeni bu mudur acaba?

    Hata: "Bilgiler hatalı" hatası alsam da local'de sorun yok!

    Teşekkürler.

    YanıtlaSil
  2. Aynı sorun bende de var yardim

    YanıtlaSil

SQL Server - Satırları Birleştirme

Merhaba,  Bu yazımda sql server'da birden çok satırı birleştirip tek satır yapmayı anlatacağım. Senaryomuz şu şekilde olsun mesela; bir...