用Kaptcha第三方包做验证码验证

Kaptcha是google提供的一个第三方的包,可以做验证码验证。他是运行原理把验证码存放到session域中,当用到的时候,从session域中取出来,然后与输入的验证码进行对比,就可以了。接下来,来看代码。

首先,先导入kaptcha-2.3.2.jar包。之后再web.xml中配置验证码需要的信息。我先列举一下都可以配置什么信息。

kaptcha.border
验证码图片的边框,可以设置yes或者no
默认值 yes

kaptcha.border.color
边框的颜色reg值。合法值 rgb,black,blue,white
默认值 black

kaptcha.border.thickness
边框的宽度
默认 1

kaptcha.image.width
图片的宽度
默认200

kaptcha.image.height
图片的高度
默认50

kaptcha.producer.impl
生成图片使用的类
默认 com.google.code.kaptcha.impl.DefaultKaptcha

kaptcha.textproducer.impl
生成图片中文字的使用的类
默认com.google.code.kaptcha.text.impl.DefaultTextCreator

kaptcha.textproducer.char.string
验证码中使用的字符
默认 abcde2345678gfymnpwx

kaptcha.textproducer.char.length
验证码中字符的数量
默认 5

kaptcha.textproducer.font.names
验证码的字体
默认 Arial, Courier

kaptcha.textproducer.font.size
字体的大小
默认 40

kaptcha.textproducer.font.color
字体颜色 rgb值,颜色单词
默认 black

kaptcha.textproducer.char.space
两个字符之间的间距
默认 2

kaptcha.noise.impl
干扰线生成类
默认 com.google.code.kaptcha.impl.DefaultNoise

kaptcha.noise.color
干扰线颜色
默认 black

kaptcha.obscurificator.impl
The obscurificator implementation.
默认 com.google.code.kaptcha.impl.WaterRipple

kaptcha.background.impl
背景颜色设置类
默认 com.google.code.kaptcha.impl.DefaultBackground

kaptcha.background.clear.from
渐变颜色 左到右
默认 light grey

kaptcha.background.clear.to
渐变颜色 右到左
默认 white


kaptcha.word.impl
词语渲染器
默认 com.google.code.kaptcha.text.impl.DefaultWordRenderer


kaptcha.session.key
在session中存储属性的名字
默认 KAPTCHA_SESSION_KEY


web.xml的配置

<!-- 验证码的配置 --><servlet><servlet-name>KaptchaServlet</servlet-name><!-- 引入类 --><servlet-class>com.google.code.kaptcha.servlet.KaptchaServlet</servlet-class><!-- 验证码显示的所有数据 --><init-param><param-name>kaptcha.textproducer.char.string</param-name><param-value>ABSADJKLJsadasdFEIF187987</param-value></init-param><!-- 验证码中将会显示几个字母 --><init-param><param-name>kaptcha.textproducer.char.length</param-name><param-value>4</param-value></init-param><!-- 验证码中字体的格式 --><init-param><param-name>kaptcha.textproducer.font.names</param-name><param-value>楷体</param-value></init-param><!-- 验证码放入session中的key值 --><init-param><param-name>kaptcha.session.key</param-name><param-value>code</param-value></init-param></servlet><servlet-mapping><servlet-name>KaptchaServlet</servlet-name><url-pattern>/code.jpg</url-pattern></servlet-mapping>

JSP中的代码:当第几图片是会刷新验证码

<script type="text/javascript" src="${pageContext.request.contextPath }/script/jquery-1.7.2.js"></script>
<script type="text/javascript">$(function(){$("#img_code").click(function(){this.src = "code.jpg?t="+Math.random();});});
</script>
</head>
<body><form action="CodeServlet" method="post">请输入验证码:<input type="text" name="code"/><br><br><img alt="" src="code.jpg" id="img_code"><br><br><input type="submit" value="验证"/></form>
</body>

Servlet中的代码

protected void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {//获取session对象HttpSession session = request.getSession();//获取前台输入框输入的验证码的值String imgCode = request.getParameter("code");//获取session中的验证码的值String code = (String) session.getAttribute("code");System.out.println("img_code:"+imgCode);System.out.println("code:"+code);//验证码进行对比if(code.equalsIgnoreCase(imgCode)){response.sendRedirect(request.getContextPath()+"/success.jsp");}else{response.sendRedirect(request.getContextPath()+"/error.jsp");}}

效果如下

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/71573.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Kaptcha-验证码使用及扩展

一、第三方验证码API 1、引入 kaptcha-datasource-spring-boot-starter。 引入kaptcha-spring-boot-starter: 基于 SpringBoot Google Kaptcha 验证码 快速启动器的验证码生成包 <dependency><groupId>com.baomidou</groupId><artifactId>kaptcha-s…

python-第三方接口获取验证码

一、图鉴 图片识别-打码平台-打码网站-识别验证码-图鉴网络科技有限公司 需要注册&#xff0c;每次识别成功需要0.002元/次&#xff0c;详细接口文档见上面路径 说明&#xff1a;识别度高&#xff0c;基本不会错&#xff0c;但是收费 通用图片识别接口 接口地址说明Conten…

仿照支付宝等——自动获取短信中的验证码

仿照淘宝支付宝等&#xff0c;自动获取服务器端发来的验证码&#xff0c;实际是监听特定的号码的内容&#xff0c;主要方法如下&#xff1a; 当系统收到短信时&#xff0c;会发出一个action名称为android.provider.Telephony.SMS_RECEIVED的广播Intent&#xff0c;该Intent存放…

利用支付宝短信服务接口 实现手机号 验证码登录Demo

一、首先需要去阿里云注册账号并登录 二、注册阿里云的短信服务 会有100条免费短信 获取自己的AccessKey&#xff08;accessKeyId&#xff0c;accessKeySecret&#xff09; 三、在阿里云短信服务 注册短信的 签名 和 模板 阿里云短信服务参考地址&#xff1a;https://www.aliy…

阿里短信验证码接口和支付宝沙箱支付接口

阿里短信验证码接口和支付宝沙箱支付接口 一、阿里短信验证码接口 1. 申请阿里AccessKey&#xff0c;填写AccessKey ID和AccessKeySecret 2. 申请短信的签名名称和模板 Java的API接口如下&#xff0c;其中模板可根据自己需要进行修改 /**发送短信*/public Integer SendMsg(Stri…

关键词生成原创文章及句子的软件!开发原理分析

朋友们大家好&#xff01;今天又要来给大家上一课吧&#xff0c;关于输入关键词自动生成文章的软件大家觉得网上有没有&#xff1f; 答案&#xff1a;肯定是没有&#xff01; 那么我们今天就给大家带来这么一款软件&#xff0c;我们只需要输入你的关键词就能自动生成原创文章…

写文案,认准这几个APP就够了

想要写出10w的文案&#xff0c;也不是那么容易的&#xff0c;毕竟如果要是能够那么轻易的就写出来的话&#xff0c;也不会有那么多人为了这个文案而感到头秃了。但是你要是说它容易的话&#xff0c;也是有窍门的如果我们按照窍门来进行编写的话&#xff0c;就会相对来说容易一些…

这款“狗屁不通”文章生成器火了,效果确实比GPT 2差太远

整理 | 夕颜 出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09; 【导读】最近&#xff0c;一个名字相当接地气的“狗屁不通”文章生成器&#xff08;BullshitGenerator&#xff09;火了&#xff0c;截至目前 GitHub 上 Star 数已超过 3200&#xff0c;还上了微博热搜…

【IEEE】IEEE论文接收后proof(校样)全流程实例讲解

文章目录 1. proof邮件内容分块解读1.1 获取你的校对文件的步骤1.2 上传修正稿关于什么时候缴费 2、校对稿首页的一般说明 在论文被接受并提交Final Version.pdf文件之后的第4天&#xff0c;收到了proof(校样)的要求。(注意&#xff1a;由于IEEE旗下期刊众多&#xff0c;编辑和…

计算机硕士论文盲审,研究生毕业论文盲审那些事,你造吗?

原标题&#xff1a;研究生毕业论文盲审那些事&#xff0c;你造吗&#xff1f; 首先声明&#xff0c;盲审研究生论文——无论博士或是硕士——纯粹属于扯淡之列&#xff0c;虽然鄙人无权更正&#xff0c;也不敢不从&#xff0c;但根本没有看得起发明该项技术的人&#xff01; 有…

输入正确的账号密码和验证码后 验证码一直报错误的解决办法

这两天写了一个登录的功能页面&#xff0c;用的是ivew&#xff0c;大致样子长这样 输入正确的账号密码以及验证码后死活提示验证码错误&#xff0c;后来查了下才发现需要对发起请求的时候配置 withCredentials: true 我用的是axios&#xff0c;配以了一下就可以了&#xff0c;…

Windows10系统中Foxmail修改密码之后登录一直提示密码错误

情况说明&#xff1a;这是Windows10中自带的针对Foxmail邮箱的特殊毛病 1&#xff1a;右键Foxmail图标&#xff0c;选择属性 2&#xff1a;点击“兼容性” 点击下面“更改所有用户的设置” 3&#xff1a;勾选“以管理员身份运行此程序”

java基于Android快递物流服务系统

&#xff08;1&#xff09;后台管理平台 设计实现物流管理平台&#xff0c;完成对司机、所载货物、出发点、目的地、运输轨迹等的管理。主要研究的内容为前后端框架的选择&#xff0c;对系统信息的展示与管理。 数据展示&#xff1a;管理人员通过不同的筛选条件&#xff0c;查…

一篇文章告诉你,为什么移动数据捕获对运输物流公司很重要?

随着世界走向数字化和智能手机的使用增加&#xff0c;移动数据采集正在成为大多数行业的新常态。航运物流也不例外。从捕获详细的订单和交付信息到跟踪货运和仓库位置&#xff0c;条形码技术用于运输物流世界的每一步。通过智能数据采集&#xff0c;运输和物流公司可以获得更好…

盘点那些参与央行数字货币的公司们

来源:互链脉搏 法定数字货币一直属于央行内部的保密项目&#xff0c;其参与方的身份更是神秘。而12月24日&#xff0c;几则消息的公布&#xff0c;使得央行数字货币参与方的轮廓愈加清晰。 当天&#xff0c;腾讯内部发布了《关于成立数字货币研究项目组&#xff08;虚拟组织&am…

新春特辑 | 大数据专题合辑 报告下载

志在哪里&#xff0c;哪里就有成功&#xff1b;心在哪里&#xff0c;哪里就有风景&#xff1b;爱在哪里&#xff0c;哪里就有感动。在新年来临之际&#xff0c;互联互通社区衷心祝愿您&#xff1a;春节快乐&#xff0c;身体健康&#xff0c;心想事成&#xff01; 1、2020大数据…

元宇宙游戏开发 元宇宙游戏开发公司

元宇宙游戏开发、元宇宙操作系统开发设计、元宇宙操作系统基本建设、元宇宙游戏开发源码、沉浸式体验元宇宙游戏开发、大中型元宇宙游戏开发、元宇宙土地修建、3D元宇宙游戏开发。现阶段&#xff0c;大家精英团队在元宇宙游戏开发新项目层面的工作经验比较完善&#xff0c;在元…

mcu服务器芯片 概念股,MCU芯片概念股名单一览,6股2021股价翻番

缺“芯”给了MCU芯片概念股一剂强行针&#xff0c;23只MCU芯片概念股中竟有6股2021股价涨幅超100%【富满电子、国民技术、全志科技、上海贝岭、士兰微、中颖电子&#xff0c;其中富满电子、国民技术股价涨幅超200%】&#xff0c;为此MCU芯片概念股完全可以雄霸A股2021年各种热门…

HTML+CSS制作仿制当当网

新程序员&#xff1a;一起进步 目录 前言 一、项目代码 1.头部 2.导航栏 3.banner图 4.主体 5.底部 6.附录 前言 本项目是基于Html5CSS3技术所制作的静态网页&#xff0c;适合新手练习学习完成html之后所独立完成的静态网页 一、项目代码 1.头部 效果图&#xff1a…

STM32应用开发实践教程:初识STM32

1.1.1 什么是 STM32 1&#xff0e;STM32 概述 STM32 微控制器是意法半导体&#xff08;ST Microelectronics&#xff0c;ST&#xff09;有限公司出品的一系列微控制 器&#xff08;Micro Controller Unit&#xff0c;MCU&#xff09;的统称。 意法半导体有限公司于 1987 年 6 月…