Asp.Net MVC 3 – ReCaptcha

Merhabalar arkadaşlar bu makalemizde google’ın bir hizmeti olan recaptcha uygulamasının nasıl kullanıldığını görüyor olacağız.

Kullanımı her yapıya göre farklılık göstersede aslında birbirleri arasında pek fazla fark yok. Biz makalemizde Asp.Net MVC 3 için örnek yapacağız.

1) En başta projemize Microsoft-Web-Helpers tool’unu kurmamız gerekmekte. Bunun için solution’a sağ tıklayıp “Add Package Reference” diyoruz. Daha sonra source kısmında Microsoft-Web-Helpers’i aratıp gerekli tool’a ulaşıyoruz. Install dedikten sonra projemizin reference kısmına Systems.Web.Helpers dll’ini referans olarak ekliyor. Bu işlemi yaptıktan sonra; http://www.google.com/recaptcha sayfasına girip google hesabınız ile giriş yapacaksınız. Üye olduktan sonra bir domain girmenizi isteyecek ve size 2 adet key üretecek. Bunlardan biri publicKey diğeri ise privateKey’dir. Daha sonra reCAPTCHA plugins and libraries diyerek gerekli dll dosyasını indirip reference’lerimize dahil ediyoruz.

2)Şimdi projemizin source kısmına recaptcha’i ekleyelim. Bunun için ekleyeceğimiz razor veya aspx webformumuza

@{
ReCaptcha.PublicKey = "Sizin public Keyiniz";
}
@ReCaptcha.GetHtml(theme: "red")

kodlarını ekliyoruz. Theme seçeneği olarak bizlere 4 farklı seçenek sunuyor. Ayrıca kendimizde bir theme generate edebiliyoruz. Bunlar ile ilgili geniş bilgi http://www.google.com/recaptcha nin dökümantasyon kısmında mevcut. Bu işlemi yaptıktan sonra recaptcha sayfamıza gelecektir.

3)Artık tek bir şey kaldı, kodu kontrol etmek.. Kodu kontrol etmek için ise Model’imize

if (ModelState.IsValid)
{
if (ReCaptcha.Validate("sizin privateKey’iniz"))
{
Response.Write("Güvenlik kodu doğrulandı");
}
else
{
Response.Write("Güvenlik kodunu yanlış girdiniz.");
}


}

 

Bu makaleyi ekran görüntüleriyle süslemek ve genişletmek isterdim fakat, aslına bakarsanız 2 saat once bir projemde lazım olduğu için kendim kullandım. Ve unutmamak için 10 dk içerisinde buraya karaladım. Mutlaka ama mutlaka birilerine yardımcı olacaktır 🙂 Takıldığınız yer olur ise makalenin altına yorum bırakabilirsiniz, mutlaka cevaplarım..
Hoşçakalın!