How to implement Google reCAPTCHA in ASP.NET MVC
By FoxLearn 2/18/2024 1:08:25 AM 300
To integrate Google reCAPTCHA V2 in your websites, you need to go to Google reCaptcha website, then login with your google account.
Next, Choose the reCAPTCHA v2 option, then add your domain in the list of domains
Click Register button, You will get a site key and a secret key.
Open your Manage Nuget Packages, then install ReCaptcha-AspNet or you can install from Nuget command line
Install-Package ReCaptcha-AspNet
Open your web.config under the appSettings section, add your secret and public keys as the following.
<add key="recaptcha-public-key" value="Your public key" /> <add key="recaptcha-private-key" value="Your private key" />
Open your html layout, then modify your code as shown below
@using(Html.BeginForm("Home","Test"){ @ReCaptcha.GetCaptcha() <input type="submit"> }
Create a test action in your home controller
[HttpPost] public ActionResult Test() { string captchaResponse = Request.Form["g-recaptcha-response"]; if (ReCaptcha.ValidateCaptcha(captchaResponse)) { return View(); } // A Bot return RedirectToAction("Robot"); }
and don't forget to include the following namespace to your class
using hbehr.recaptcha;
- Content Negotiation in Web API
- How to fix 'InvalidOperationException: Scheme already exists: Bearer'
- How to fix System.InvalidOperationException: Scheme already exists: Identity.Application
- Add Thread ID to the Log File using Serilog
- Handling Exceptions in .NET Core API with Middleware
- InProcess Hosting in ASP.NET Core
- Limits on ThreadPool.SetMinThreads and SetMaxThreads
- Controlling DateTime Format in JSON Output with JsonSerializerOptions