在进行低价秒杀时需要做一个人机校验防止机器抢购,如下图~

此时可以使用创蓝的图文滑动验证码来实现~
在创蓝云智官网注册 -> 登录 -> 认证 -> 激活产品 -> 使用
产品激活之后可以在“已激活产品”列表查看,每个产品格式如下

点击使用可以进行一些账户配置,如服务器IP地址、余额提醒等等。。。。

<script src="https://captcha.253.com/Captcha.js">script>
<body>
<div id="app">div>
<button style="position: absolute;top: -999999999999999999px;opacity: 0;" id="CaptchaEl" data-appid="CaptchaAppId" data-cbfn="callback" type="button" >QYbutton>
<script>
window.callback = function(res){
console.log('res', res)
}
script>
body>
CaptchaAppId是在激活产品时对接对方技术时获取的,用于验证滑块验证码是否正确。
callback属性值一致,在校验结束后Captcha会自动调用该函数,函数的返回值如下
const dom = document.getElementById('CaptchaEl')
if (dom) {
dom.click()
} else {
Toast.fail('请重新尝试')
}
created () {
window.addEventListener('message', (res) => {
const obj = JSON.parse(res.data || '{"message":"{"type":1}"}').message
if (obj.type === 3) {
// 表示验证成功
}
})
}
可以通过客户端引入步骤一步一步进行~
<script src="https://captcha.253.com/Captcha.js">script>
<body>
<div id="app">div>
<button style="position: absolute;top: -999999999999999999px;opacity: 0;" id="CaptchaEl" type="button" >QYbutton>
<script>
var captcha = new Captcha('CaptchaAppId', callback, {});
document.getElementById('CaptchaEl').onclick = function(){
captcha.show();
}
function callback(res){
console.log('res', res)
}
script>
body>
Captcha('CaptchaAppId', callback, {})
CaptchaAppId是在激活产品时对接对方技术时获取的,用于验证滑块验证码是否正确。

按钮点击时调用实例化对象的show方法
const dom = document.getElementById('CaptchaEl')
if (dom) {
dom.click()
} else {
Toast.fail('请重新尝试')
}
created () {
window.addEventListener('message', (res) => {
if(!res){
return
}
try{
const data = JSON.parse(res.data)
if ( data.message.type == 3){
console.log('成功')
}
}catch(err){
console.log('err')
}
})
},