1.0.34 • Published 9 months ago

node-recaptcha-v3 v1.0.34

Weekly downloads
-
License
MIT
Repository
github
Last release
9 months ago

node-recaptcha-v3

An open-source Node.js library to support verifying Google reCAPTCHA V3.

You can see an example here

Table of Contents

Installation

You can install the package using npm:

npm install node-recaptcha-v3

Usage

To use the library, you need to create an instance of the ReCaptchaV3 class with your secret key. After that, you can use the verify middleware in your Express.js routes.

Example

import express from 'express';
import ReCaptchaV3 from 'node-recaptcha-v3';

const app = express();
const reCaptchaV3 = new ReCaptchaV3({ secretKey: 'YOUR_SECRET_KEY' });

app.use(express.json());

app.post('/verify', reCaptchaV3.verify(0.5), (req, res) => {
    res.send({ score: req.reCaptchaV3Score });
});

app.listen(3000, () => {
    console.log('Server is running on port 3000');
});

Creating and Sending Token

  • Install reCAPTCHA: Register your site at Google reCAPTCHA to obtain your site key.
  • Generate Token: Use the site key in your JavaScript to create a token when the user submits a form:
<script src="https://www.google.com/recaptcha/api.js?render=YOUR_SITE_KEY"></script>
<script>
    grecaptcha.ready(function () {
        grecaptcha.execute('YOUR_SITE_KEY', { action: 'submit' }).then(function (token) {
            // Send the token to the server via body or header
            fetch('/verify', {
                method: 'POST',
                headers: {
                    'recaptcha-v3-token': token // or send in the body
                },
                body: JSON.stringify({ reCaptchaV3Token: token })
            });
        });
    });
</script>

Middleware of the Server

The middleware accepts the token via body or header:

  • Body: reCaptchaV3Token
  • Header: re-captcha-v3-token

API Reference

reCAPTCHA

  • Constructor: new ReCaptchaV3(options)
    • options (Object): An object containing the configuration options.
      • secretKey (String): Your reCAPTCHA secret key.
  • Method: verify(threshold)

    • threshold (Number): The score threshold (0.0 - 1.0). Requests with scores below this threshold will be rejected.

Examples

Here are some common scenarios you can implement with the library:

  • Verify reCAPTCHA Score: Ensure that the request meets the score threshold for further processing.
  • Custom Threshold: You can set a custom threshold for different routes based on your requirements.

License

This project is licensed under the MIT License. See the LICENSE file for details.

1.0.19

10 months ago

1.0.22

10 months ago

1.0.21

10 months ago

1.0.20

10 months ago

1.0.26

10 months ago

1.0.25

10 months ago

1.0.24

10 months ago

1.0.23

10 months ago

1.0.29

10 months ago

1.0.28

10 months ago

1.0.27

10 months ago

1.0.33

10 months ago

1.0.32

10 months ago

1.0.31

10 months ago

1.0.34

9 months ago

1.0.18

10 months ago

1.0.17

10 months ago

1.0.16

10 months ago

1.0.15

10 months ago

1.0.14

10 months ago

1.0.13

10 months ago

1.0.12

10 months ago

1.0.11

10 months ago

1.0.10

10 months ago

1.0.9

10 months ago

1.0.8

10 months ago

1.0.7

10 months ago

1.0.6

10 months ago

1.0.5

10 months ago

1.0.4

10 months ago

1.0.3

10 months ago

1.0.1

10 months ago

1.0.0

10 months ago