什么是极验:就是图形验证
先说废话:在极验的客户端部署上 官方给出的是jquery的案例 但其实在jquery的案例和vue的操作上差不多 就只是vue在main.js里面全部配置好极验官方给的gt.js文件就OK
极验客户端部署文档:http://docs.geetest.com/sensebot/deploy/client/web#%E5%AE%89%E8%A3%85
gt.js文件地址:https://static.geetest.com/static/tools/gt.js
好了废话完毕上才艺:
1.在main.js上引用gt.js
main.js文件配置
import './gt/get'
就这样就ok了!!!
文件是上面gt.js地址里面的东西 把它复制 放到文件夹里面然后引用就OK了!!!
2.在你需要使用的vue文件里面使用
<template>
<div class="login-container">
<div id="geetest"></div>
</div>
</template>
<script>
import axios from 'axios'
export default {
name: 'Login',
mounted() {
this.onInitGeetest()
},
methods: {
onInitGeetest() {
axios.get('http://XXX.com/verify/init').then(function (response) { //接口地址是你后端给你的地址 里面的参数是initGeetest需要的参数
console.log(response)
const { data } = response
let datas = JSON.parse(data)
console.log(datas)
initGeetest(//initGeetest是你直接使用就OK了 不需要想为啥 为啥就是你在main.js里面已经引用到了gt文件了 下面的对象是给initGeetest需要的参数也就是你在接口上面获取到的 放进去就OK 如果你还要改宽度什么就加一个width:100% ;
{
gt: datas.gt,
challenge: datas.challenge,
success: datas.success,
new_captcha: true,
},
function (captchaObj) {
// 这里可以调用验证实例 captchaObj 的实例方法
console.log(captchaObj)
//通过调用captchaObj对象的appendTo方法,给某个标签添加上滑动验证对象,就行了,看写法
captchaObj.appendTo('#geetest') //参数是一个标签选择器,那么这个标签就加上了滑动验证的页面效果
captchaObj.onSuccess(() => { //这里是滑动完毕回调
//通过这个captchaObj.getValidate()方法,会得到一个自定义对象,这个对象里面有三个数据,将来点击提交按钮的时候,不仅仅要提交用户名和密码,还要将这三个数据提交给后端进行验证
let result = captchaObj.getValidate()
console.log(result)
this.geetestObj = result //保存这个数据
})
}
)
}),
function (err) {
console.log(err)
}
},
},
}
</script>
上面的代码把接口改一下 复制上就OK啦!!! 不要说不符合你代码的样式什么的 如果这样的话 那就谨慎修改
主要效果如下
先点击图片1 再出图片二 滑动之后的回调在代码有显示
如果还有不懂的请 参考https://www.cnblogs.com/yanghongtao/p/10785339.html (我也是引用这位小哥哥的)
验证大概效果已经出来 还是有要改的请参考:http://docs.geetest.com/sensebot/apirefer/api/web
找了大部分案例 还是觉得很多太复杂了 我这属于简写版 直接看代码就OK 没废话代码