Como usar o reCAPTCHA com o ASP.NET

Importante: a versão 1.0 da API reCAPTCHA não é mais compatível. Faça upgrade para a versão 2.0. Saiba mais

A biblioteca reCAPTCHA ASP.NET fornece uma maneira simples de colocar uma CAPTCHA no seu site ASP.NET, que ajuda a bloquear bots. de abusar disso. A biblioteca envolve a API reCAPTCHA. Você pode usar a biblioteca de qualquer linguagem .NET, incluindo C# e Visual Basic .NET.

Para usar o reCAPTCHA com o ASP.NET, faça o download do reCAPTCHA biblioteca ASP.NET.

Início rápido

Depois de se inscrever para receber as chaves de API, veja abaixo as instruções básicas para instalação reCAPTCHA no seu site com o ASP.NET:

  1. Adicione uma referência no seu site à biblioteca/bin/Release/Recaptcha.dll: no menu do site do Visual Studio, escolha "Add Reference" e clique na guia ".NET" na caixa de diálogo. Selecione o Recaptcha.dll na lista de componentes .NET e clique em "OK". Se você não vir componente, clique na guia Procurar e procure o arquivo assembly no disco rígido.
  2. Insira o controle reCAPTCHA no formulário que você quer proteger adicionando os seguintes snippets de código:

    No topo da página do aspx, insira o seguinte:

      <%@ Register TagPrefix="recaptcha" Namespace="Recaptcha" Assembly="Recaptcha" %>
    

    Em seguida, insira o controle reCAPTCHA dentro da tag <form runat="server">:

      <recaptcha:RecaptchaControl
        ID="recaptcha"
        runat="server"
        PublicKey="your_public_key"
        PrivateKey="your_private_key"
        />
    

    Você precisará substituir suas chaves pública e privada em PublicKey e PrivateKey, respectivamente.

  3. Use a validação ASP.NET para validar o formulário (verifique Page.IsValid no envio).

Esta é uma apresentação "Hello World" com o reCAPTCHA usando o Visual Basic. Um exemplo em C# é incluído no download da biblioteca.

  <%@ Page Language="VB" %>
  <%@ Register TagPrefix="recaptcha" Namespace="Recaptcha" Assembly="Recaptcha" %>
  <script runat=server%gt;
      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"
              Theme="red"
              PublicKey="your_public_key"
              PrivateKey="your_private_key"
              />

          <asp:Button ID="btnSubmit" runat="server" Text="Submit" OnClick="btnSubmit_Click" />
      </form>
  </body>
  </html>

Leitura adicional

  • Personalizar a aparência
  • Dicas e diretrizes
  • Solução de problemas