Русские документы
Ежедневные компьютерные новости RSS rusdoc.ru  Найти :
http://www.rusdoc.ru. Версия для печати.

CAPTCHA для Вашего сайта

Раздел: Programming / .NET Framework @ 04.08.2008 | Ключевые слова: .net asp.net vb.net captcha web webdev веб-программирование

Автор: PoiSoN
Источник: habrahabr

Сегодня я расскажу о том, как можно быстро и легко прикрутить проверку CAPTCHA на Ваш сайт.

Для тех, кто не в курсе, CAPTCHA это автоматизированный тест Тьюринга для различения компьютеров и людей. Подробнее о том, что такое CAPTCHA можно почитать на википедии.

В данном примере я воспользовался бесплатным сервисом recaptcha.net. Вам придется пройти регистрацию, чтобы работать с ним, ибо понадобятся Public и Private ключи.

Так работает reCAPTCHA API:

Я возьму пример кода реализации reCAPTCHA написанном для ASP.NET, но можно найти его практически для всех языков здесь.

Для того, чтобы начать работать:

  1. Надо скачать библиотеку reCAPTCHA.
  2. Добавить Recaptcha.dll в директорию /bin/ Вашего сайта.
  3. Вставить следующий reCAPTCHA control в страницу где Вы хотите реализовать проверку:


<recaptcha:RecaptchaControl
 ID="recaptcha"
 runat="server"
 PublicKey="1234567890"      
 PrivateKey="0987654321" />
* Где PublicKey и PrivateKey это ключи, которые Вы получили при регистрации.

Все, что Вам осталось, это проверить property Page.IsValid в коде.

Например, вот так:


<script runat=server>
 Sub btnSubmit_Click(ByVal sender As Object, ByVal e As EventArgs)
  If Page.IsValid Then
   lblResult.Text = "You Got It!"
   lblResult.ForeColor = Drawing.Color.Green
  Else
   lblResult.Text = "Incorrect"
   lblResult.ForeColor = Drawing.Color.Red
  End If
 End Sub
script>
<html>
<body>
 <form runat="server">
  <asp:Label Visible=false ID="lblResult" runat="server" />
 
  <recaptcha:RecaptchaControl
   ID="recaptcha"
   runat="server"
   PublicKey="1234567890"   
   PrivateKey="0987654321"
   />
  <br />
  <asp:Button ID="btnSubmit" runat="server" Text="Submit" OnClick="btnSubmit_Click" />
 form>
body>
html>

* This source code was highlighted with Source Code Highlighter.

И это все.

P.S.
Если Вы когда-то разрабатывали свой модуль Captcha, буду рад, если поделитесь своим вареантом реализации.

* Оригинальная запись была опубликована в моем блоге.


Вернуться в раздел: Programming / .NET Framework
© Copyright 1998-2012 Александр Томов. All rights reserved.