Vue中使用Google的reCAPTCHA v3人机校验-demo

这篇具有很好参考价值的文章主要介绍了Vue中使用Google的reCAPTCHA v3人机校验-demo。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

reCAPTCHA

Google 提供了 reCAPTCHA(v3 和 v2)和 reCAPTCHA Enterprise,帮助您保护网站免受欺诈活动、垃圾内容和滥用行为的侵扰

Vue中使用Google的reCAPTCHA v3人机校验-demo,Vue,JavaScript,vue.js,前端,javascript

 reCAPTCHA v3

「所有的頁面都會有 reCaptcha 的追蹤功能」
不需做任何事,v3會針對使用者行為,判定安全性分數,1.0 代表操作自然很像真人,0.0 意味極有可能是機器人,如安全性太低,網站才會要求人機驗證。
如使用 v3,右下角會出現 reCAPTCHA 的圖示,可用 css 隱藏

reCAPTCHA 使用流程

注册 reCAPTCHA ➝ 拿到网站密钥🔑 ➝ 密钥放進 reCAPTCHA 程式碼 ➝ 取得驗證 token 回傳給後端

Vue中使用Google的reCAPTCHA v3人机校验-demo,Vue,JavaScript,vue.js,前端,javascript

Vue中使用Google的reCAPTCHA v3人机校验-demo,Vue,JavaScript,vue.js,前端,javascript

reCAPTCHA v2 使用

使用 vue3-recaptcha2 套件,可以快速使用 v2 

npm install vue3-recaptcha2
<vue-recaptcha
  :sitekey="v2Sitekey"
  size="normal"
  theme="light"
  hl="zh-TW"
  @verify="recaptchaVerified"
  @expire="recaptchaExpired"
  @fail="recaptchaFailed"
  ref="vueRecaptcha">
</vue-recaptcha>


import vueRecaptcha from 'vue3-recaptcha2';

export default {
   components: {
	  vueRecaptcha
  },
  setup() {
    // 帶入你的 siteKey
    const v2Sitekey = '6LeIxAcTAAAAAJcZVRqyHh71UMIEGNQ_MXjiZKhI';

    // 回傳一組 token,並把 token 傳給後端驗證
    const recaptchaVerified = (res) => {
      console.log(res)
	  }

    const recaptchaExpired = () => {
      // 過期後執行動作
    }

    const recaptchaFailed = () => {
      // 失敗執行動作
    }

    return {
      v2Sitekey, recaptchaVerified, recaptchaExpired, recaptchaFailed
    }
  }
}

 reCAPTCHA v3 使用

使用 vue-recaptcha-v3 套件,可以快速使用 v3

npm install vue-recaptcha-v3

main.js

import { createApp } from 'vue'
import App from './App.vue'
import { VueReCaptcha } from 'vue-recaptcha-v3'

const app = createApp(App);
 // 帶入你的 siteKey
app.use(VueReCaptcha, { siteKey: '6LeIxAcTAAAAAJcZVRqyHh71UMIEGNQ_MXjiZKhI' });
app.mount('#app')
<form class="row g-3">
  <div class="col-md-4 position-relative">
    <label class="form-label">帳號</label>
    <input type="text" class="form-control" value="" required>

  </div>
  <div class="col-md-4 position-relative">
    <label class="form-label">密碼</label>
    <input type="password" class="form-control" value="" required>
  </div>
  <div class="col-12">
    <button class="btn btn-warning" type="button" @click="recaptcha">Submit form</button>
  </div>
</form>



import { useReCaptcha } from 'vue-recaptcha-v3'

export default {
  setup() {
    const { executeRecaptcha, recaptchaLoaded } = useReCaptcha()

    // submit 回傳一組 token,並把 token 傳給後端驗證
    const recaptcha = async () => {
      await recaptchaLoaded()
      const token = await executeRecaptcha('login')
      console.log(token)
    }

    return {
      recaptcha
    }
  }
}

使用前需注意: 
1.reCaptcha官网网站为:https://developers.google.com/recaptcha/(需要翻墙)
2.在国内使用的话,需要将demo中所有的www.google.com替换成www.recaptcha.net不然无法使用reCAPTCHA
3.使用reCaptcha需要去注册google账号,并且去https://www.google.com/recaptcha/admin#list里面去创建秘钥对()稍等我会标注出来)文章来源地址https://www.toymoban.com/news/detail-707882.html

到了这里,关于Vue中使用Google的reCAPTCHA v3人机校验-demo的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • google人机验证无法弹窗

    遇到无法访问的非国内资源,就两种合法方式,换国内源和加证书服务器 本人money有限采用第一种 首先将插件到谷歌浏览器,其他浏览器没有试过,思路一致。 点我跳转 然后下载我写好的json 链接:https://pan.baidu.com/s/1J-yQ7BPyABT6zKfl8RQnRA 提取码:6666 导入到该插件 重启电脑

    2024年02月11日
    浏览(31)
  • vue表单及遍历表单校验rules以及validator校验器的使用

    为防止用户犯错,尽可能更早地发现并纠正错误。 Element中Form (表单)组件提供了表单验证的功能,只需要通过 rules 属性传入约定的验证规则,并将 Form-Item 的 prop 属性设置为需校验的字段名即可。 注意:prop对应表单域 model 字段,使用 validate方法时,该属性是必填的。 目

    2024年02月08日
    浏览(32)
  • 使用ElEment组件实现vue表单校验空值

    1.绑定表单组件数组rules 2.在data域中设定组件rules 3.设定调用方法函数 提交校验 取消: 测试页面 提交空值 失去焦点 取消重置 提交后重置

    2024年01月24日
    浏览(30)
  • vue中的rules表单校验规则使用方法 :rules=“rules“

    :ref=\\\"dataForm\\\"        // 提交表单时进行校验 :rules=\\\"rules\\\"            // return 下的校验规则 :model=\\\"userForm\\\"  // 绑定表单的值 点击提交时,会先对表单的值进行校验判断,校验通过后,再进行后续操作。 el-form-item 里面使用 prop 属性绑定规则 el-form-item label=\\\"充值金额\\\"  prop=\\\"amo

    2024年02月05日
    浏览(35)
  • 前后端分离,使用vue3整合SpringSecurity加JWT实现登录校验

    前段时间写了一篇spring security的详细入门,但是没有联系实际。 所以这次在真实的项目中来演示一下怎样使用springsecurity来实现我们最常用的登录校验。本次演示使用现在市面上最常见的开发方式,前后端分离开发。前端使用vue3进行构建,用到了element-plus组件库、axios封装、

    2024年01月23日
    浏览(44)
  • Vue3使用element-plus实现弹窗效果-demo

    2024年02月13日
    浏览(37)
  • Vue中使用qrcode实现渲染二维码中间添加自定义logo-demo

    我们首先创建一个新的 canvas 元素,用于容纳生成的二维码。然后,使用 QRCode.toCanvas 方法将二维码生成到新的 canvas 元素中。 接下来,在 logo.onload 事件处理程序中,我们创建一个 Image 对象来加载logo图像,并在二维码中间绘制logo。最后,将生成的二维码转换为数据URL,并将

    2024年02月10日
    浏览(33)
  • VUE使用Three.js实现模型,点击交互,相机旋转视角跟随移动(Threejs中使用Tweenjs,含demo源码)

    目录 一、Three.js是什么? 二、VUE简单使用Three.js步骤 1.npm安装 2.template模板 3.引入库 4.定义全局变量 5.初始化场景 6.初始化相机 7.初始化灯光 8.初始化渲染器 9.创建模型(这里我搭建的模型是一个简单双面货架模型) 10.根据浏览器窗口自适应 11.初始化函数,页面加载完成时调用

    2024年02月03日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包