`
knight_black_bob
  • 浏览: 851076 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

验证码 使用

阅读更多

 

 下载区 有jar 包

 

	<dependency>
			<groupId>com.github.bingoohuang</groupId>
			<artifactId>patchca</artifactId>
			<version>0.0.1</version>
	</dependency>

 

 

 

验证码 使用

 

<div class="login_code_pic">
	 <a href="javascript:void(0)">
		 <img src="images/code_demo.png"	id="loginCode" onclick="refreshCode('login');" />
	 </a>
	 </div>
	 <div class="login_code_text">
		 <a href="javascript:void(0)" onclick="refreshCode('login');" >看不清,换一张?</a>
	 </div>
 </div>

 

 

 

function refreshCode(imgName) {
	var date = new Date();
	try {
		if (imgName == "login") {
			$("#loginCode").attr(
					"src",
					"userAction_refreshPatchcaImage.html?time="
					+ date.getTime());
		} else {
			$("#patchaImage").attr(
					"src",
					"userAction_refreshPatchcaImage.html?time="
					+ date.getTime());
		}
	} catch (e) {
		alert("验证码刷新超时,请重新刷新界面!");
		window.location.reload();
	}
}

  

 

private static final String  DEFAULT_CHARACTERS="34578AaCcdEeFGHhJjKkMmNnPpQRsTtUuVvWwXxYy";

private static final String PATCHCACODE = "PATCHCA"; 



public void refreshPatchcaImage() throws Exception {
		HttpServletResponse response = null;
		HttpServletRequest request = null;
		request = ServletActionContext.getRequest();
		response = ServletActionContext.getResponse();
		response.setCharacterEncoding("UTF-8");
		response.setContentType("application/json; charset=UTF-8");
		response.setContentType("image/png");//设置相应类型,告诉浏览器输出的内容为图片        
		response.setHeader("Pragma", "No-cache");//设置响应头信息,告诉浏览器不要缓存此内容        
		response.setHeader("Cache-Control", "no-cache");        
		response.setDateHeader("Expire", 0);
		OutputStream os=null;
		try{
			//创建图片对象服务
			ConfigurableCaptchaService cs = new ConfigurableCaptchaService();
			//修改图片文字颜色
			cs.setColorFactory(new SingleColorFactory(new Color(0, 0, 0)));
			//创建图片文字对象
			RandomWordFactory randomWordFactory = new RandomWordFactory();
			//设置文字对象范围
			randomWordFactory.setCharacters(DEFAULT_CHARACTERS);
			//设置图片文字最大长度
			randomWordFactory.setMaxLength(4);
			//设置图片文字最小长度
			randomWordFactory.setMinLength(4);
			//设置图片文字属性
			cs.setWordFactory(randomWordFactory);
			//设置图片的干扰效果的样式..一共有五种
			cs.setFilterFactory(new WobbleRippleFilterFactory ());
			Captcha captcha = cs.getCaptcha();
			//将四位数字的验证码保存到Session中。
			request.getSession().setAttribute(PATCHCACODE, captcha.getChallenge());
			//将图像输出到Servlet输出流中
			os=response.getOutputStream();
			ImageIO.write(captcha.getImage(), "png", os);
			os.flush();
			//关闭输出流
		}catch (Exception e) {
			e.printStackTrace();
			/*PrintWriter writer = response.getWriter();
			writer.print(false);
			writer.flush();
			writer.close();*/
			//log.error("生成验证码错误!......." + e);
		}finally{
			if(null!=os){
				os.close();
			}
		}
		
	}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

捐助开发者

在兴趣的驱动下,写一个免费的东西,有欣喜,也还有汗水,希望你喜欢我的作品,同时也能支持一下。 当然,有钱捧个钱场(右上角的爱心标志,支持支付宝和PayPal捐助),没钱捧个人场,谢谢各位。



 
 
 谢谢您的赞助,我会做的更好!

 

 

0
0
分享到:
评论

相关推荐

    基于SSM实现的注册登录系统。验证码使用jcaptcha,发送邮件使用JEmail.zip

    验证码使用jcaptcha,发送邮件使用JEmail 基于SSM实现的注册登录系统。验证码使用jcaptcha,发送邮件使用JEmail 基于SSM实现的注册登录系统。验证码使用jcaptcha,发送邮件使用JEmail 基于SSM实现的注册登录系统。...

    谷歌验证码使用工具——kaptcha-2.3.2

    【谷歌验证码使用工具——kaptcha-2.3.2】是一款基于Java的开源验证码生成库,主要用于网站的身份验证,防止自动化的机器人或者恶意攻击者进行非法操作。kaptcha这个名字是"CAPTCHA"(Completely Automated Public ...

    验证码使用的demo

    验证码使用的demo,可以作为项目使用,供参考

    12306验证码怎么用?12306火车票订票网站图片验证码使用教程.docx

    1. **验证码使用步骤** - **第一步:** 当你需要登录12306网站或进行购票操作时,系统可能会要求你完成验证码验证。你会看到一个带有“点此开始验证”链接的验证码图片。 - **第二步:** 点击这个链接,会出现...

    12306火车票订票网站图片验证码使用教程.docx

    以下是对图片验证码使用的详细步骤和相关知识点的说明: 1. **验证码识别**:在首次进入12306网站时,你可能会遇到一个带有验证码的页面,通常显示为一组不规则排列的图片,每个图片代表一个特定的物体或概念。...

    验证码使用jar包导入即用

    本篇文章将详细讲解如何在Java项目中使用jar包实现验证码功能。 首先,你需要下载验证码相关的jar包,这通常包含了生成和验证验证码的核心类。在提供的压缩包文件中,可能包含了一些必要的库文件,比如`...

    自制ASP.NET C#中文验证码 使用DLL和纯代码二种对比

    自制ASP.NET C#中文验证码 使用DLL和纯代码二种对比 DLL使用WEBXML提供的产生随机中文字符

    短信验证码使用手册1

    在本文中,我们将深入探讨短信验证码的使用流程,特别是如何在织梦内容管理系统(DedeCMS)中集成互亿无线的短信验证码服务。 首先,要使用互亿无线的短信验证码服务,你需要在他们的官方网站(www.ihuyi.com)上...

    图形验证码生成合集

    2. **中文验证码**:与常见的字母和数字验证码不同,中文验证码使用汉字,增加了破解的难度,因为需要识别和理解汉字,这对于非中文环境的机器人来说非常困难。在处理中文网站时,使用中文验证码可以提高安全性。 3...

    中文验证码.zip

    1. **字符库**:验证码使用的中文字符集合,可能包含常用汉字和一些生僻字,以增加识别难度。 2. **生成逻辑**:生成验证码的算法,可能涉及到随机选择字符、组合字符、扭曲图像、添加噪声等步骤,以防止被机器自动...

    tessnet2_32及语言包和验证码使用方法

    1. 加载图像:使用 tessnet2_32 提供的 API 加载包含验证码的图像。 2. 初始化 OCR 引擎:设置语言包,例如 `engine.Init("data", "chi_sim")` 对应于简体中文。 3. 进行识别:调用 `engine.Recognize(image)` 进行...

    易语言闭关验证码使用例程源码,易语言闭关验证码1.00

    易语言闭关验证码1.00源码,闭关验证码1.00,创建位图,取画布句柄,取位图句柄,取宽度,取高度,置画笔属性,置实色画刷,置交叉线画刷,移动到,画直线到,画多义线点数组,画多义线横纵数组,画多边形点数组,画多边形横纵数组,...

    26种ASP验证码代码

    6. **字符集定义**:可以自定义验证码使用的字符集,包括英文大小写字母、数字,甚至中文字符,这会影响验证码的复杂性和安全性。 7. **错误处理**:当用户输入的验证码不正确时,需要有适当的错误处理机制,例如...

    验证码生成

    4. **一次性**:验证码使用后即废,不允许重复使用,防止被截获并滥用。 常见的验证码类型有: - **图像验证码**:最传统的形式,用户需识别并输入图片中的字符。图片通常经过扭曲、模糊处理,有的还会加入干扰线...

    PHP验证码(4位数字)

    2. **验证码使用.txt**:这个文件可能是包含验证码的使用示例或者说明文档,指导开发者如何在实际项目中集成验证码。可能包含以下内容: - **HTML表单**:在HTML表单中添加一个隐藏字段(如`session_id`)用于存储...

    NodeJs - Native实现短信验证码注册登录完整示例:NodeJs - Native.js和附件说明

    4. **验证验证码**:`Native.js`模块应有验证功能,比较用户输入的验证码和服务器保存的验证码是否一致,同时考虑验证码的有效期,防止过期验证码使用。 5. **注册/登录处理**:如果验证码验证通过,根据业务逻辑...

    制作网站常用--四位彩色验证码

    3. **验证码使用说明**:`验证码说明.doc` 文件很可能是详细解释如何集成和使用这个四位彩色验证码的文档。通常,这样的说明会涵盖以下几个方面: - **生成器设置**:如何配置验证码生成器,包括字符集的选择(字母...

    Python+OpenCV验证码识别系统

    本研究的主要目的是开发一个基于Python和OpenCV的验证码识别系统,并提供相应的源码和...分类器训练:使用机器学习算法,如支持向量机(SVM)、卷积神经网络(CNN)等,对提取的特征进行训练,建立验证码的分类器模型。

    高效的验证码识别技术与验证码分类思想

    #### 一、验证码使用现状 目前,验证码已成为各大网站尤其是论坛类网站的标准配置之一。据统计,国内排名前100名的论坛中超过60%采用了验证码技术。除了论坛外,电子邮件类网站也会使用验证码技术来预防垃圾邮件的...

Global site tag (gtag.js) - Google Analytics