背景
關(guān)于驗(yàn)證碼的使用場景還是非常多的逗旁,很多網(wǎng)站上的驗(yàn)證碼可謂是五花八門嘿辟,下面是我使用Vue.js實(shí)現(xiàn)滑動(dòng)拼圖驗(yàn)證碼做的一個(gè)筆記片效。
效果展示
準(zhǔn)備工作
- 訪問KgCaptcha網(wǎng)站红伦,注冊賬號(hào)后登錄控制臺(tái)淀衣,訪問“無感驗(yàn)證”模塊昙读,申請開通后系統(tǒng)會(huì)分配給應(yīng)用一個(gè)唯一的AppId膨桥、AppSecret蛮浑。
- 提供后端SDK來校驗(yàn)token(即安全憑據(jù))是否合法 只嚣,目前支持PHP版沮稚、Python版册舞、Java/JSP版蕴掏、.Net C#版调鲸。
- 訪問Vue.js中文官網(wǎng)盛杰,復(fù)制Vue.js插件鏈接藐石。
- 注意:先HTML頭部初始化行為驗(yàn)證碼即供,然后HTML底部初始化Vue.js于微,否則KgCaptcha的js部分函數(shù)與被Vue.js發(fā)生沖突逗嫡,導(dǎo)致失效办素。
實(shí)現(xiàn)代碼
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<!--頭部引入Vue.js插件-->
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<!--頭部引入Vue.js插件-->
<!--頭部引入行為驗(yàn)證碼js插件-->
<script id="KgCaptcha" src="captcha.js?appid=XXX"></script>
<script>
kg.captcha({
// 綁定元素祸穷,驗(yàn)證框顯示區(qū)域
bind: "#captchaBox",
// 驗(yàn)證成功事務(wù)處理
success: function(e) {
console.log(e);
kg.$('#token').value = e['token'];
},
// 驗(yàn)證失敗事務(wù)處理
failure: function(e) {
console.log(e);
},
// 點(diǎn)擊刷新按鈕時(shí)觸發(fā)
refresh: function(e) {
console.log(e);
}
});
</script>
<!--頭部引入行為驗(yàn)證碼js插件-->
</head>
<body>
<div id="app">
<!--自定義內(nèi)容、Vue組件-->
token: <input name="token" id="token" />
<!--行為驗(yàn)證碼組件-->
<div id="captchaBox"></div>
<!--行為驗(yàn)證碼組件-->
<button type="button">提交</button>
<!--自定義內(nèi)容雷滚、Vue組件-->
</div>
</body>
<!--底部運(yùn)行Vue.js代碼-->
<script>
var app = new Vue({
el: '#app',
})
</script>
<!--底部運(yùn)行Vue.js代碼-->
</html>
最后
SDK開源地址:https://github.com/KgCaptcha,順便做了一個(gè)演示:https://www.kgcaptcha.com/demo/