VUE接入腾讯验证码功能(滑块验证)备忘

时间:2021-05-26

最近在用VUE做个简单的用户系统,登录注册需要验证码,想找个那种拖动的,找geetest居然已经不面向小客户了(或者说只有收费套餐)。

腾讯防水墙的验证码免费使用,有2000/小时的免费额度,对于小网站完全足够了,阿里应该也有,我看discuz有插件直接能用,但没找到入口

腾讯的在这,和腾讯云无关:https://007.qq.com/captcha/#/ 申请api很简单,QQ登录,创建应用,ID和secretkey就出来了,直接在文档里展示,赞一个。

vue有人做了封装了geetest+腾讯验证码的插件,但实现不了我想要的逻辑,而且似乎把简单的东西复杂化了,遂放弃自己接。

我的应用的需求是:

用户点击按钮后,先执行我的验证逻辑,验证逻辑通过后再执行验证码逻辑,插件实现了一个vue组件进行绑定验证过程,但这样就没法实现我的需求了。而且我一开始找插件是因为以为腾讯提供的JS没有带UI,后来发现其实已经自带UI,一个函数就可以调起自适应的验证码界面,很方便。

接入方法

那么进入记录的正题

1.引入JS

在VUE的index.html头部加入以下内容即可

<script src="https://ssl.captcha.qq.com/TCaptcha.js"></script>

2.调起腾讯验证码

有两种方式可以调起,第一种采用dom元素加data属性

<button id="TencentCaptcha" data-appid="你的APPID" data-cbfn="callback">验证</button>

这样这个元素被点击的时候就会触发了(也就实现了前面说的第三方插件的功能了,所以不知道那个插件有啥意义..)

第二种方式是我使用的,JS内写逻辑:

new TencentCaptcha('腾讯验证码APPID', (rsp)=>{ if(rsp.ret===0){ //我的验证码通过后的逻辑写在此 }else{ this.$vux.toast.show({ text: '请完成滑块验证', type: 'warn' }) } },{});

这种方式可以完成我的需求,在验证表单数据的逻辑通过后调用此逻辑,此逻辑内再写表单提交请求,就可以了

3.腾讯验证码的一些设置

今天又看了下腾讯验证码的后台,感觉功能做的挺齐全也很实用。作为一个免费产品非常不错了:

可以看数据:

可以轻微定义界面(本身界面不会有广告):

可以设置体验更好的验证模式等:

总结

以上所述是小编给大家介绍的VUE接入腾讯验证码功能(滑块验证)备忘,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章