Eu vim aqui em minha pesquisa, não vi uma resposta e continuei pesquisando.
Após a minha pesquisa, essa janela ainda estava aberta, por isso estou atualizando esta postagem com minhas descobertas.
Aqui é onde você pode aprender sobre o reCAPTCHA :
http://scraping.pro/no-captcha-recaptcha-challenge/
Basicamente, você adiciona isso à sua página da web:
<script src="https://www.google.com/recaptcha/api.js" >;
<form method="post">
<div class="g-recaptcha" data-sitekey="[site key issued by google]"></div>
<input value="submit" type="submit" />
</form>
Para obter suas chaves reCAPTCHA , acesse este site do Google:
https://www.google.com/recaptcha/intro/index.html
Depois de usar as chaves usando o link acima, você poderá se aprofundar na codificação usando as seguintes informações do Google:
https://developers.google.com/recaptcha/
NOTA:
Na documentação do Google:
O script deve ser carregado usando o protocolo HTTPS e pode ser incluído em qualquer ponto da página sem restrição.
Aqui está um exemplo de como eu consegui funcionar:
<html>
<head>
<title>Contact</title>
<script src="https://www.google.com/recaptcha/api.js" async defer></script>
<script>
var onloadCallback = function () {
grecaptcha.render('dvCaptcha', {
'sitekey': '<%=ReCaptcha_Key %>',
'callback': function (response) {
$.ajax({
type: "POST",
url: "CS.aspx/VerifyCaptcha",
data: "{response: '" + response + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (r) {
var captchaResponse = jQuery.parseJSON(r.d);
if (captchaResponse.success) {
$("[id*=txtCaptcha]").val(captchaResponse.success);
$("[id*=lblAlarm]").hide();
} else {
$("[id*=txtCaptcha]").val("");
$("[id*=lblAlarm]").show();
var error = captchaResponse["error-codes"][0];
$("[id*=lblAlarm]").html("RECaptcha error. " + error);
}
}
});
}
});
};
</script>
</head>
<body>
<form action="?" method="POST">
<div id="dvCaptcha" class="g-recaptcha" data-sitekey="[site key issued by google]"></div>
<br />
<asp:Button ID="btnSubmit" runat="Server" Text="Send" OnClick="btnSubmit_Click" />
<asp:Label ID="lblAlarm" runat="server" ForeColor="Red"></asp:Label>
</form>
</body>
</html>
Se você precisar validar no code-behind do ASP.NET, basta verificar se o controle "g-recaptcha-response" está preenchido:
protected static string ReCaptcha_Key, ReCaptcha_Secret;
protected void btnSubmit_Click(object sender, EventArgs e)
{
if (!String.IsNullOrEmpty(Request.Form["g-recaptcha-response"]))
{
// other code
} else
{
lblAlarm.Text = "reCAPTCHA failed.";
}
}
Felizmente, alguns de vocês acham isso útil.