Recaptcha.Verify.Net
1.1.0
Suggested Alternatives
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package Recaptcha.Verify.Net --version 1.1.0
NuGet\Install-Package Recaptcha.Verify.Net -Version 1.1.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Recaptcha.Verify.Net" Version="1.1.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Recaptcha.Verify.Net --version 1.1.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Recaptcha.Verify.Net, 1.1.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Recaptcha.Verify.Net as a Cake Addin #addin nuget:?package=Recaptcha.Verify.Net&version=1.1.0 // Install Recaptcha.Verify.Net as a Cake Tool #tool nuget:?package=Recaptcha.Verify.Net&version=1.1.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Recaptcha.Verify.Net
Library for verifying Google reCAPTCHA v2/v3 response token for ASP.NET Core. The project targets .NET Core 3.1.
Installation
Package can be installed using Visual Studio UI (Tools > NuGet Package Manager > Manage NuGet Packages for Solution and search for "Recaptcha.Verify.Net").
Also latest version of package can be installed using Package Manager Console:
PM> Install-Package Recaptcha.Verify.Net
Using reCAPTCHA verification
- Add secret key in appsettings.json file
{
"Recaptcha": {
"SecretKey": "<recaptcha secret key>",
"ScoreThreshold": 0.5
}
}
- Configure service in Startup.cs
public void ConfigureServices(IServiceCollection services)
{
services.ConfigureRecaptcha(Configuration.GetSection("Recaptcha"));
//...
}
- Use service in controller to verify captcha answer
[ApiController]
[Route("api/[controller]")]
public class LoginController : Controller
{
private readonly ILogger _logger;
private readonly IRecaptchaService _recaptchaService;
public LoginController(ILoggerFactory loggerFactory, IRecaptchaService recaptchaService)
{
_logger = loggerFactory.CreateLogger<LoginController>();
_recaptchaService = recaptchaService;
}
[HttpPost]
public async Task<IActionResult> Login([FromBody] Credentials credentials, CancellationToken cancellationToken)
{
var checkResult = await _recaptchaService.VerifyAndCheckAsync(
credentials.RecaptchaToken,
credentials.Action,
cancellationToken);
if (!checkResult.Success)
{
if (!checkResult.ScoreSatisfies)
{
// Handle score less than specified threshold for v3
return BadRequest();
}
if (!checkResult.Response.Success)
{
_logger.LogError($"Recaptcha error: {JsonConvert.SerializeObject(checkResult.Response.ErrorCodes)}");
}
return BadRequest();
}
// Process login
return Ok();
}
}
Examples
Examples could be found in library repository:
- Recaptcha.Verify.Net.ConsoleApp (.NET Core 3.1)
- Recaptcha.Verify.Net.AspNetCoreAngular (ASP.NET Core 3.1 + Angular)
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. |
.NET Core | netcoreapp3.1 is compatible. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETCoreApp 3.1
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 5.0.0)
- Microsoft.Extensions.Options (>= 5.0.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 5.0.0)
- Newtonsoft.Json (>= 13.0.1)
- Refit (>= 6.0.38)
- Refit.HttpClientFactory (>= 6.0.38)
- Refit.Newtonsoft.Json (>= 6.0.38)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.