一款超好用的开源验证码

本贴最后更新于 1946 天前,其中的信息可能已经天翻地覆

I1kgGyjcNhu2WAr

EasyCaptcha

github 地址: https://github.com/whvcse/EasyCaptcha

简介

Java 图形验证码,支持 gif、中文、算术等类型,可用于 Java Web、JavaSE 等项目。

效果展示(部分验证码闪动,截图无法展示)

qxtCVYiB3I1kzhR

导入方式

1、 maven

<dependencies> <dependency> <groupId>com.github.whvcse</groupId> <artifactId>easy-captcha</artifactId> <version>1.6.2</version> </dependency> </dependencies>

2、 gradle

dependencies { compile 'com.github.whvcse:easy-captcha:1.6.2' }
  1. jar 包

    下载地址 EasyCaptcha.jar

在 SpringMVC 中使用

@Controller public class CaptchaController { @RequestMapping("/captcha") public void captcha(HttpServletRequest request, HttpServletResponse response) throws Exception { CaptchaUtil.out(request, response); } }

前端 HTML

<img src="/captcha" width="130px" height="48px" />

如果使用了安全框架之类的拦截功能,要把/captcha 路径排除登录拦截。

有些同学可能需要在 Servlet 中使用如下

web.xml 中配置 servlet:

<web-app> <!-- 图形验证码servlet --> <servlet> <servlet-name>CaptchaServlet</servlet-name> <servlet-class>com.wf.captcha.servlet.CaptchaServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>CaptchaServlet</servlet-name> <url-pattern>/captcha</url-pattern> </servlet-mapping> </web-app>

前端 html 代码:

比较验证码

@Controller public class LoginController { @PostMapping("/login") public JsonResult login(String username,String password,String verCode){ if (!CaptchaUtil.ver(verCode, request)) { CaptchaUtil.clear(request); // 清除session中的验证码 return JsonResult.error("验证码不正确"); } } }

设置宽高和位数

@Controller public class CaptchaController { @RequestMapping("/captcha") public void captcha(HttpServletRequest request, HttpServletResponse response) throws Exception { // 设置位数 CaptchaUtil.out(5, request, response); // 设置宽、高、位数 CaptchaUtil.out(130, 48, 5, request, response); // 使用gif验证码 GifCaptcha gifCaptcha = new GifCaptcha(130,48,4); CaptchaUtil.out(gifCaptcha, request, response); } }

还有更多参数,可到作者 github 查看

  • CAP

    CAP 指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可兼得。

    12 引用 • 5 回帖 • 633 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • adlered 1 via macOS

    👍

  • 其他回帖
  • someone
    作者

    来看过的同学评论一下呀,让我看看你们来过 QAQ