java 开源验证码_推荐一个非常好的行为验证码开源项目!

项目介绍

行为验证码采用嵌入式集成方式,接入方便,安全,高效。抛弃了传统字符型验证码展示-填写字符-比对答案的流程,采用验证码展示-采集用户行为-分析用户行为流程,用户只需要产生指定的行为轨迹,不需要键盘手动输入,极大优化了传统验证码用户体验不佳的问题;同时,快速、准确的返回人机判定结果。目前对外提供两种类型的验证码,其中包含滑动拼图、文字点选。如图1-1、1-2所示。若希望不影响原UI布局,可采用弹出式交互。

e30832694b4a004b943011262b3411c3.png

滑动拼图

a831bd8e90ab832dea8883b6976673b8.png

点选文字

概念术语描述

术语

描述

验证码类型

1)滑动拼图 blockPuzzle 2)文字点选 clickWord

验证

用户拖动/点击一次验证码拼图即视为一次“验证”,不论拼图/点击是否正确

二次校验

验证数据随表单提交到后台后,后台需要调用captchaService.verification做二次校验。目的是核实验证数据的有效性。

交互流程

① 用户访问应用页面,请求显示行为验证码

② 用户按照提示要求完成验证码拼图/点击

③ 用户提交表单,前端将第二步的输出一同提交到后台

④ 验证数据随表单提交到后台后,后台需要调用captchaService.verification做二次校验。

⑤ 第4步返回校验通过/失败到产品应用后端,再返回到前端。如下图所示。

2dd1ed536c96438013323a7440fdb0df.png

时序图

目录结构

├─core

│ ├─captcha    java核心源码

│ └─captcha-spring-boot-starter    springboot快速启动

├─images       效果图

├─service

│ ├─springboot    后端为springboot项目示例

│ └─springmvc    后端为springmvc非springboot项目示例

└─view       多语言客户端示例

├─android    原生android实现示例

├─flutter    flutter实现示例

├─html    原生html实现示例

├─ios    原生ios实现示例

├─uni-app    uni-app实现示例

└─vue    vue实现示例

在线体验

1.1 电脑在线体验:https://captcha.anji-plus.com/

1.2 微信小程序和H5在线体验(基于uni-app实现)

b752c20a4b33d4e68a06cee3d5644b16.png

微信小程序

微信小程序Demo

项目地址

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值