Sử dụng reCAPTCHA với ASP.NET

Lưu ý quan trọng: Phiên bản 1.0 của API reCAPTCHA không còn được hỗ trợ, vui lòng nâng cấp lên phiên bản 2.0. Tìm hiểu thêm

Thư viện reCAPTCHA ASP.NET cung cấp một cách đơn giản để đặt CAPTCHA trên trang web ASP.NET của bạn, giúp bạn ngăn chặn bot lạm dụng tính năng này. Thư viện này bao bọc reCAPTCHA API. Bạn có thể sử dụng thư viện này bằng bất kỳ ngôn ngữ .NET nào, bao gồm cả C# và Visual Basic .NET.

Để sử dụng reCAPTCHA với ASP.NET, bạn có thể tải reCAPTCHA Thư viện ASP.NET.

Bắt đầu nhanh

Sau khi bạn đã đăng ký khoá API, dưới đây là hướng dẫn cơ bản để cài đặt reCAPTCHA trên trang web của bạn bằng ASP.NET:

  1. Thêm tài liệu tham khảo trên trang web của bạn vào library/bin/Release/Recaptcha.dll: Trong Visual Studio Trình đơn trang web, chọn Add Reference rồi nhấp vào thẻ .NET trong hộp thoại. Chọn ReCAPTCHA.dll trong danh sách các thành phần .NET, rồi nhấp vào OK. Nếu bạn không thấy cấu phần phần mềm đó, nhấp vào tab Browse (Duyệt qua) và tìm tệp tập hợp trên ổ đĩa cứng của bạn.
  2. Chèn tuỳ chọn điều khiển reCAPTCHA vào biểu mẫu mà bạn muốn bảo vệ bằng cách thêm các đoạn mã sau:

    Ở đầu trang aspx, chèn đoạn mã sau:

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

    Sau đó, hãy chèn chế độ điều khiển reCAPTCHA vào bên trong <form runat="server"> thẻ:

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

    Bạn cần phải thay thế khoá công khai và riêng tư của mình vào khoá PublicKey và PrivateKey tương ứng.

  3. Hãy nhớ sử dụng tính năng xác thực ASP.NET để xác thực biểu mẫu (bạn nên kiểm tra Page.IsValid khi gửi).

Sau đây là chương trình "Hello World" có reCAPTCHA bằng Visual Basic. Một mẫu C# là đi kèm với bản tải xuống thư viện.

  <%@ 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>

Tài liệu đọc thêm

  • Tuỳ chỉnh giao diện
  • Mẹo và nguyên tắc
  • Khắc phục sự cố