关于验证码:Vuejs实现图形验证码

31次阅读

共计 1426 个字符,预计需要花费 4 分钟才能阅读完成。

背景

对于验证码的应用场景还是十分多的,很多网站上的验证码堪称是形形色色,上面是我应用 Vue.js 实现滑动拼图验证码做的一个笔记。

筹备工作

  • 拜访 KgCaptcha 网站,注册账号后登录控制台,拜访“无感验证”模块,申请开明后零碎会调配给利用一个 AppId 和 AppSecret。
  • 提供后端 SDK 来校验 token(即平安凭据) 是否非法,目前反对 PHP 版、Python 版、Java/JSP 版、.Net C# 版。
  • 拜访 Vue.js 中武官网,复制 Vue.js 插件链接。
  • 留神:先 HTML 头部初始化行为验证码,而后 HTML 底部初始化 Vue.js,否则 KgCaptcha 的 js 局部函数与被 Vue.js 发生冲突,导致生效。

HTML、JS 代码

<!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 插件 -->
<!-- 头部引入行为验证码 js 插件 -->
<script id="KgCaptcha" src="captcha.js?appid=xxx"></script>
<script>
    kg.captcha({
        // 绑定元素,验证框显示区域
        bind: "#captchaBox", // 嵌入式、触发式(嵌入式、触发式标签及事件 和 弹窗式标签及事件,二选一)button: "#captchaButton", // 弹窗式(嵌入式、触发式标签及事件 和 弹窗式标签及事件,二选一)// 验证胜利事务处理
        success: function(e) {console.log(e);
            kg.$('#token').value = e['token']; 
        },
        // 验证失败事务处理
        failure: function(e) {console.log(e);
        },
        // 点击刷新按钮时触发
        refresh: function(e) {console.log(e);
        }
    });
</script>
<!-- 头部引入行为验证码 js 插件 -->
</head>
<body>
    <div id="app">
        <!-- 自定义内容、vue 组件 -->
        token: <input name="token" id="token">
        <!-- 行为验证码组件 -->
        <div id="captchaBox"></div> <!-- 嵌入式、触发式(嵌入式、触发式标签及事件 和 弹窗式标签及事件,二选一)-->
        <!-- 行为验证码组件 -->
        <button  type="button"> 提交 </button>
        <a id="captchaButton"> 点击弹出验证窗口 </a> <!-- 弹窗式(嵌入式、触发式标签及事件 和 弹窗式标签及事件,二选一)-->
        <!-- 自定义内容、vue 组件 -->
    </div>
</body>
<!-- 底部运行 vue.js 代码 --> 
<script>
    var app = new Vue({el: '#app',})
</script>
<!-- 底部运行 vue.js 代码 --> 
</html>

最初

SDK 开源地址:https://github.com/KgCaptcha,顺便做了一个演示:https://www.kgcaptcha.com/demo/

正文完
 0