
Security News
Browserslist-rs Gets Major Refactor, Cutting Binary Size by Over 1MB
Browserslist-rs now uses static data to reduce binary size by over 1MB, improving memory use and performance for Rust-based frontend tools.
reactjs-captcha
Advanced tools
BotDetect Captcha React Component (JavaScript: React 0.13.x/0.14.x/15/16+)
For a comprehensive step-by-step integration guide please see our React Captcha Component Integration Guide.
The guide covers the integration with the following backends:
To give you a hint how React Captcha Component works we pasted bellow a few, not necessary up-to-date (and mostly frontend related), excerpts from the Integration Guide.
npm install reactjs-captcha --save
Endpoint configuration depends on which technology you use in the backend.
import { captchaSettings } from 'reactjs-captcha';
class App extends React.Component {
constructor(props) {
super(props);
captchaSettings.set({
captchaEndpoint:
'https://your-app-backend-hostname.your-domain.com/simple-captcha-endpoint.ashx'
});
}
...
}
export default App;
import { captchaSettings } from 'reactjs-captcha';
class App extends React.Component {
constructor(props) {
super(props);
captchaSettings.set({
captchaEndpoint:
'https://your-app-backend-hostname.your-domain.com/simple-captcha-endpoint'
});
}
...
}
export default App;
import { captchaSettings } from 'reactjs-captcha';
class App extends React.Component {
constructor(props) {
super(props);
captchaSettings.set({
captchaEndpoint:
'https://your-app-backend-hostname.your-domain.com/botdetect-captcha-lib/simple-botdetect.php'
});
}
...
}
export default App;
import { Captcha } from 'reactjs-captcha';
class App extends React.Component {
...
render() {
return (
<Captcha captchaStyleName="yourFirstCaptchaStyle"
ref={(captcha) => {this.captcha = captcha}} />
<input id="yourFirstCaptchaUserInput" type="text" />
)
}
}
// process the yourFormWithCaptcha on submit event
yourFormWithCaptchaOnSubmitHandler(event) {
// the user-entered captcha code value to be validated at the backend side
let userEnteredCaptchaCode = this.captcha.getUserEnteredCaptchaCode();
// the id of a captcha instance that the user tried to solve
let captchaId = this.captcha.getCaptchaId();
let postData = {
userEnteredCaptchaCode: userEnteredCaptchaCode,
captchaId: captchaId
};
let self = this;
// post the captcha data to the /your-app-backend-path on your backend.
// make sure you import the axios in this view with: import axios from 'axios';
axios.post(
'https://your-app-backend-hostname.your-domain.com/your-app-backend-path',
postData, {headers: {'Content-Type': 'application/json; charset=utf-8'}})
.then(response => {
if (response.data.success == false) {
// captcha validation failed; reload image
self.captcha.reloadImage();
// TODO: maybe display an error message, too
} else {
// TODO: captcha validation succeeded; proceed with your workflow
}
});
event.preventDefault();
}
The userEnteredCaptchaCode
and captchaId
values posted from the frontend are used to validate a captcha challenge on the backend.
The validation is performed by calling the: Validate(userEnteredCaptchaCode, captchaId)
.
// C#
SimpleCaptcha yourFirstCaptcha = new SimpleCaptcha();
bool isHuman = yourFirstCaptcha.Validate(userEnteredCaptchaCode, captchaId);
' VB.NET
Dim yourFirstCaptcha As SimpleCaptcha = New SimpleCaptcha()
Dim isHuman As Boolean = yourFirstCaptcha.Validate(userEnteredCaptchaCode, captchaId)
SimpleCaptcha yourFirstCaptcha = SimpleCaptcha.load(request);
boolean isHuman = yourFirstCaptcha.validate(userEnteredCaptchaCode, captchaId);
$yourFirstCaptcha = new SimpleCaptcha();
$isHuman = $yourFirstCaptcha->Validate($userEnteredCaptchaCode, $captchaId);
React Captcha Component Step-by-step Integration Guide -- read this one first
React Captcha Component Basic Example -- partial code walk-through
React Captcha Component Form Example -- partial code walk-through
The current version of the React Captcha Component requires one of the following BotDetect CAPTCHA backends:
Through contact form on captcha.com.
FAQs
BotDetect Captcha React Component (JavaScript: React 0.13.x/0.14.x/15/16+)
The npm package reactjs-captcha receives a total of 269 weekly downloads. As such, reactjs-captcha popularity was classified as not popular.
We found that reactjs-captcha demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Browserslist-rs now uses static data to reduce binary size by over 1MB, improving memory use and performance for Rust-based frontend tools.
Research
Security News
Eight new malicious Firefox extensions impersonate games, steal OAuth tokens, hijack sessions, and exploit browser permissions to spy on users.
Security News
The official Go SDK for the Model Context Protocol is in development, with a stable, production-ready release expected by August 2025.