验证码就用它,一键接入,优雅又有趣

现在登录什么账号,基本都用到验证码,多数是短信验证码,不知道大家是什么感受,了不起倒不太喜欢这种操作,每次一登录一个账号就要去手机清理一下短信,不然小红点看着难受。不过近两年行为验证码异军突起,大多数网页都用到这类验证码,虽然有的文字验证码有点费眼睛,但能减少我收短信/按数字键的频率,就足够把我收服帖了。

今天,就说说这个行为验证码的开源项目-----AJ-Captcha。

AJ-Captcha介绍

AJ-Captcha行为验证码,包含滑动拼图、文字点选两种方式,UI支持弹出和嵌入两种方式。后端基于Java实现,提供纯Java.jar和SpringBoot Starter。前端提供了Android、iOS、Futter、Uni-App、ReactNative、Vue、Angular、Html、Php等多端示例。行为验证码采用嵌入式集成方式,接入方便,安全,高效。抛弃了传统字符型验证码展示-填写字符-比对答案的流程,采用验证码展示-采集用户行为-分析用户行为流程,用户只需要产生指定的行为轨迹,不需要键盘手动输入,极大优化了传统验证码用户体验不佳的问题;同时,快速、准确地返回人机判定结果。目前对外提供两种类型的验证码,其中包含滑动拼图、文字点选。如图1-1、1-2所示。若希望不影响原UI布局,可采用弹出式交互。

交互流程

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

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

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

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

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

安装

项目地址:https://gitee.com/anji-plus/captcha

先启动后端,导入Eclipse或者Intellij,启动service/springboot的StartApplication。

再启动前端,使用visual code打开文件夹view/vue,启动。

npm install
npm run dev

最后

AJ-Captcha行为验证码不仅脱离传统的数字等类型的验证形式,而且能解脱键盘,只需要拖拽图片到合适位置/点击文字即可完成验证。小伙伴一起去玩转它呀,希望开发人员也多用用这类验证码,这简直就是用户福音啊!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
腾讯云提供了相关的Java SDK以供开发者接入验证码服务。首先,您需要在项目的pom.xml文件中引入腾讯云核心API和腾讯云短信API的依赖。然后,您可以调用相应的API来生成验证码和发送短信验证码。 首先,您需要生成验证码的方法。根据您提供的代码,可以使用以下方法来生成验证码: ``` public String getCode() { String str = "0123456789"; String uuid = new String(); for (int i = 0; i < 4; i++) { char ch = str.charAt(new Random().nextInt(str.length())); uuid += ch; } return uuid; } ``` 接下来,您可以使用腾讯云的短信API来发送验证码。首先,您需要引入相关的依赖: ```xml <!-- 腾讯云核心API --> <dependency> <groupId>com.tencentcloudapi</groupId> <artifactId>tencentcloud-sdk-java</artifactId> <version>3.1.111</version> </dependency> <dependency> <groupId>com.github.qcloudsms</groupId> <artifactId>qcloudsms</artifactId> <version>1.0.6</version> </dependency> ``` 然后,您可以在相应的方法中调用腾讯云短信API来发送验证码。以下是一个示例方法: ```java @RequestMapping(value = "/register/createCode/{phone}", method = RequestMethod.GET) public ResultVO createCode(@PathVariable("phone") String phone) { String code = getCode(); log.info("========================>" + code); // 将验证码保存到Redis,key为电话号码,有效期180s redisTemplate.opsForValue().set(phone, code, 180, TimeUnit.SECONDS); // 发送短信 String msg = txSmsTemplate.sendMesModel(phone, code); return ResultVO.success(); } ``` 以上就是腾讯云验证码接入Java的基本步骤。希望对您有帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尘世中-迷途小书童

欢迎IT从业者的头脑风暴

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值