Сегодня я расскажу о том, как можно быстро и легко прикрутить проверку CAPTCHA на Ваш сайт.
Для тех, кто не в курсе, CAPTCHA это автоматизированный тест Тьюринга для различения компьютеров и людей. Подробнее о том, что такое CAPTCHA можно почитать на википедии.
В данном примере я воспользовался бесплатным сервисом recaptcha.net. Вам придется пройти регистрацию, чтобы работать с ним, ибо понадобятся Public и Private ключи.
Так работает reCAPTCHA API:
Я возьму пример кода реализации reCAPTCHA написанном для ASP.NET, но можно найти его практически для всех языков здесь.
* Где PublicKey иPrivateKey это ключи, которые Вы получили при регистрации.
Все, что Вам осталось, это проверить property Page.IsValid в коде.
Например, вот так:
И это все.
P.S.
Если Вы когда-то разрабатывали свой модуль Captcha, буду рад, если поделитесь своим вареантом реализации.
* Оригинальная запись была опубликована в моем блоге.
Для тех, кто не в курсе, CAPTCHA это автоматизированный тест Тьюринга для различения компьютеров и людей. Подробнее о том, что такое CAPTCHA можно почитать на википедии.
В данном примере я воспользовался бесплатным сервисом recaptcha.net. Вам придется пройти регистрацию, чтобы работать с ним, ибо понадобятся Public и Private ключи.
Так работает reCAPTCHA API:
Я возьму пример кода реализации reCAPTCHA написанном для ASP.NET, но можно найти его практически для всех языков здесь.
Для того, чтобы начать работать:
- Надо скачать библиотеку reCAPTCHA.
- Добавить Recaptcha.dll в директорию /bin/ Вашего сайта.
- Вставить следующий reCAPTCHA control в страницу где Вы хотите реализовать проверку:
<%@ Register TagPrefix=«recaptcha» Namespace=«Recaptcha» Assembly=«Recaptcha» %>
<recaptcha:RecaptchaControl
ID=«recaptcha»
runat=«server»
PublicKey=«1234567890»
PrivateKey=«0987654321» />
* Где PublicKey иPrivateKey это ключи, которые Вы получили при регистрации.
Все, что Вам осталось, это проверить property Page.IsValid в коде.
Например, вот так:
<%@ Page Language=«VB» %>
<%@ Register TagPrefix=«recaptcha» Namespace=«Recaptcha» Assembly=«Recaptcha» %>
<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, буду рад, если поделитесь своим вареантом реализации.
* Оригинальная запись была опубликована в моем блоге.