在网站上使用谷歌的 reCAPTCHA 可以增加安全性,防止恶意机器人攻击。npm 上的 recaptcha 包提供了专业的解决方案。
安装 recaptcha 包
在命令行中输入以下命令即可安装 recaptcha 包:
npm install recaptcha
使用 recaptcha 包
Step 1:在谷歌 reCAPTCHA 网站注册并获取 API key
在 谷歌 reCAPTCHA 网站 注册并申请 API key。在注册后,可以创建不同类型的 reCAPTCHA,全局 Site key 和 Secret key 需要记录下来,稍后会用到。
Step 2:引入 recaptcha 包
在 JavaScript 文件中引入 recaptcha 包:
const Recaptcha = require('recaptcha');
Step 3:初始化 recaptcha 实例
通过传入 Site key 和 Secret key 初始化 recaptcha 实例:
const recaptcha = new Recaptcha(siteKey, secretKey, options);
其中,options 参数是一个可选的对象,可以设置一些选项,例如:
const recaptcha = new Recaptcha(siteKey, secretKey, { theme: 'dark', secure: true });
Step 4:将 recaptcha 实例渲染到网页上
调用 recaptcha 实例的 render()
方法将 reCAPTCHA 渲染到网页上:
recaptcha.render();
Step 5:验证用户的 reCAPTCHA 响应
调用 recaptcha 实例的 verify()
方法,传入用户在网页上响应的 reCAPTCHA 参字符串。响应的参字符串可以通过 recaptcha 实例的 getResponse()
方法获取。
recaptcha.verify(response, (error, data) => { if (error) { // handle error } else { // handle success } });
示例代码
以下是可以在你的网站上直接使用的代码:
-- -------------------- ---- ------- ------ ------- ------------------------------------------------------- ------- ------ ------ ---- ------------------- ------------------ ----------- ------- ----------------------------- ------- -------- -------- --------------- - ----------------------------------------- - --------- -------
注意,上述代码尚未在后端验证 reCAPTCHA 响应。为了完整地实现,还需要参考上述步骤,并验证 reCAPTCHA 响应是有效的并确定用户是真实的。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/73720