给网站添加谷歌验证(我不是机器人)


声明:本文转载自https://my.oschina.net/u/2601303/blog/2054631,转载目的在于传递更多信息,仅供学习交流之用。如有侵权行为,请联系我,我会及时删除。

1、去谷歌网站。(如果没有谷歌gmail,也许还要注册gmail并登陆)

https://www.google.com/recaptcha/admin#list

2、注册要验证的网站。


  • Label中随意填写个标签。
  • 'Choose the type of reCAPTCHA'中选择验证类型。第一个是网站。第二个只是后台验证。第三个是安卓。
  • ‘Domains’中填写要验证的域名。这个就和网站关联起来了。
  • 同意服务条款之后。点击‘register’

3、集成文档。

注册完成后会看到下面的内容。

点击之后。会有集成方法。

‘keys’里面有2个key:Site key是给前端放在HTML表单中的,Secret key是前端提交表单之后。后台去请求谷歌用的。

4、前端集成要点:

  1. 引入js <script src='https://www.google.com/recaptcha/api.js'></script>
  2. 把这个添加到表单中。<div class="g-recaptcha" data-sitekey="6Lee1XAUAAAAAMjH4T6yMzgkq6iwdIurjfpYKBx0"></div>
    用户提交表单之后。会有个名字是g-recaptcha-response的input框。提交到后台。

5、后端验证:

后端验证直接上代码:

//组装请求
    let options = {
        method: 'POST',
        uri: 'https://www.google.com/recaptcha/api/siteverify',
        form: {
            secret: '上面的Secret key',
            response:fields['g-recaptcha-response'] 这里获取前端表单的g-recaptcha-response
        }
    };
    //请求谷歌验证
    let verifyBody = await  requestPromise(options).catch(err =>{
        ctx.throw(err.message);
    });
    let  verifyResult = JSON.parse(verifyBody);
    if (!verifyResult.success)
        ctx.throw("' I'm not a robot ' verification failed");

本文发表于2018年09月19日 20:23
(c)注:本文转载自https://my.oschina.net/u/2601303/blog/2054631,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如有侵权行为,请联系我们,我们会及时删除.

阅读 5706 讨论 1 喜欢 0

抢先体验

扫码体验
趣味小程序
文字表情生成器

闪念胶囊

你要过得好哇,这样我才能恨你啊,你要是过得不好,我都不知道该恨你还是拥抱你啊。

直抵黄龙府,与诸君痛饮尔。

那时陪伴我的人啊,你们如今在何方。

不出意外的话,我们再也不会见了,祝你前程似锦。

这世界真好,吃野东西也要留出这条命来看看

快捷链接
网站地图
提交友链
Copyright © 2016 - 2021 Cion.
All Rights Reserved.
京ICP备2021004668号-1