前端随机验证码安全验证sdk

前端随机验证码安全验证sdk



前端必备工具推荐网站(免费图床、API和ChatAI等实用工具):
http://luckycola.com.cn/

前言

验证码:是一种校验区分用户是计算机还是人的公共全自动程序。

作用:防止刷票、论坛灌水、刷页、防止黑客恶意破解密码、盗取用户数据和防止恶意注册登录等等

介绍

这是一款开箱即用、维护简单、接入简单的前端随机验证码安全验证sdk模块.

一、效果展示

在线效果展示地址:点击即可跳转>>>

二、使用步骤

1.引入库

  1. 引入https://luckycola.com.cn/public/capVcode/dist/style.csshttps://luckycola.com.cn/public/capVcode/dist/mlcapsafesdk.umd.js 文件
  2. 在需要的地方初始化
  3. 参考在线demo:
    https://luckycola.com.cn/public/capVcode/index.html
    代码如下(示例):
html 复制代码
<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <link rel="icon" type="image/svg+xml" href="/vite.svg" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Vite + Vue</title>
    <style>
      #showSafeSDKBtn {
        padding: 10px 20px;
        border-radius: 4px;
        background-color: blue;
        color: white;
        font-size: 16px;
        margin-top: 20px;
      }
    </style>
    <link rel="stylesheet" href="https://luckycola.com.cn/public/capVcode/dist/style.css">
  </head>
  <body>
    <div id="app"></div>
    <button id="showSafeSDKBtn">切换sdk展现</button>
    <script type="text/javascript" src="https://luckycola.com.cn/public/capVcode/dist/mlcapsafesdk.umd.js"></script>
    <script>
       console.log('MlcapSafesdk:', MlcapSafesdk);
       let mySafeSdk = MlcapSafesdk.getSafeSdk({
            // 模式 弹窗模式(dialog) 嵌入模式(default)
            mode: 'dialog',
            // 验证key,请前往官网(http://luckycola.com.cn/)获取
            colaKey: 'AObOe764B7jCH01702230314446epH9YaJNEc',
            // 模块容器  传id  字符串(嵌入模式时候比需传入)
            container: '#app',
            // 验证类型 算式(2)、随机字符(1)
            capType: 1,
            capConfig: {
                // 字体大小(px) 默认110
                CaptchaSize: 140,
                // 噪声线条数 默认3
                CaptchaNoise: 6,
                // 随机验证字符数量 默认5 最多不超过15个
                CaptchaNum: 5,
            },
            // 初始化成功的回调函数
            initSuccCallback: (data) => {
              console.log('initSuccCallback 初始化成功:', data);
            },
            // 验证成功回调函数
            validateSucCallback: (data)=> {
              console.log('validateSucCallback 验证成功:', data);
            },
            // 验证失败回调函数
            validateFailCallback: (data)=> {
              console.log('validateFailCallback 验证失败:', data);
            },
            // sdk出错回调函数
            failCallback: (err)=> {
              console.log('sdk出错:', err);
            }
        });

        document.querySelector('#showSafeSDKBtn').addEventListener('click', () => {
          //  1、手动切换展现与隐藏
          // mySafeSdk && mySafeSdk.showSdk('show');
          // mySafeSdk && mySafeSdk.showSdk('hide');

          //  2、自动切换展现与隐藏
          mySafeSdk && mySafeSdk.toggleShowSdk();
        })
    </script>
  </body>
</html>

注意!!!: 如果您还没有Colakey,请先请前往官网获取
官网地址:http://luckycola.com.cn/

2.参数说明

参数 是否必须 说明
colaKey string 唯一的验证key,请前往官网(http://luckycola.com.cn/)获取
mode boolean 模式 弹窗模式(dialog) 嵌入模式(default)
container string 模块容器 传id 字符串(嵌入模式时候必须传入)
capType number 验证类型 算式(2)、随机字符(1)
capConfig object 验证码自定义配置,object具体参数在表后说明
js 复制代码
 capConfig: {
     // 字体大小(px) 默认110
       CaptchaSize: 140,
       // 噪声线条数 默认3
       CaptchaNoise: 6,
       // 随机验证字符数量 默认5 最多不超过15个
       CaptchaNum: 5,
   },

3.方法与事件说明

事件或方法 调用或者触发时机
initSuccCallback 初始化成功的回调函数,返回参数中可以拿到cuid参数,该参数用于后端通过接口查询当前用户是否通过了验证
validateSucCallback 验证成功回调函数 ,返回参数中可以拿到cuid参数,该参数用于后端通过接口查询当前用户是否通过了验证
validateFailCallback 验证失败回调函数
failCallback sdk出错回调函数
showSdk 手动切换sdk展现与隐藏,展现传参数"show",隐藏传入"hide"
toggleShowSdk 自动切换展现与隐藏,无需参数

4.如何通过API获取当前用户的验证状态

可以通过下面这个接口查询用户是否通过了验证


请求方式: POST

复制代码
https://luckycola.com.cn/captcha/getCaptchaV2Status

请求参数如下:

参数 说明
ColaKey 唯一的验证key,请前往官网(http://luckycola.com.cn/)获取
cuid 要查询的用户的标识,验证码sdk的回调函数中可以获得

响应案例:

json 复制代码
{
	"code": 0,
	"msg": "验证状态获取成功",
	"data": {
		// 	被查询的用户标识
		"cuid": "7c4d70ecf67dfc83010533dc2499a",
		// 用户的验证状态,如果该用户已经通过验证则为true, 没有通过验证则为false
		"validateStatus": false
	}
}
相关推荐
2501_9445255413 分钟前
Flutter for OpenHarmony 个人理财管理App实战 - 账户详情页面
android·java·开发语言·前端·javascript·flutter
2601_9498574318 分钟前
Flutter for OpenHarmony Web开发助手App实战:快捷键参考
前端·flutter
wangdaoyin201025 分钟前
若依vue2前后端分离集成flowable
开发语言·前端·javascript
心柠1 小时前
vue3相关知识总结
前端·javascript·vue.js
Amumu121381 小时前
Vue Router(二)
java·前端
桌面运维家2 小时前
vDisk VOI/IDV权限管理怎么做?安全方案详解
安全
a1117762 小时前
图书借阅管理系统(FastAPI + Vue)
前端·vue.js·fastapi
世界尽头与你2 小时前
(修复方案)kibana 未授权访问漏洞
安全·网络安全·渗透测试
常年游走在bug的边缘2 小时前
掌握JavaScript作用域:从函数作用域到块级作用域的演进与实践
开发语言·前端·javascript
极致♀雨2 小时前
vue2+elementUI table表格勾选行冻结/置顶
前端·javascript·vue.js·elementui