登录时候输入验证码,验证码图片从服务器获取方法

article/2025/8/28 10:43:59

登录时候输入验证码,验证码图片从服务器获取方法

小验证码图片 源码分享:http://pan.baidu.com/s/1skK7jRJ

展示效果:

登录时候输入验证码,验证码图片从服务器获取方法 - wangyue.123.com - moonstak

在这里插入图片描述

jsp页面:

<%@ page language=“java” import=“java.util.*” pageEncoding=“utf-8”%>

My JSP 'index.jsp' starting page 验证码: ![在这里插入图片描述](https://img-blog.csdnimg.cn/20191206111354505.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dhbmd5dWUyM2NvbQ==,size_16,color_FFFFFF,t_70)
${param.result eq 0 ?"验证码填写错误":"验证码填写正确"}

java后台代码:

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

//判断类型是获取验证码图片 还是验证提交的验证码
String type = request.getParameter(“type”);
int trueFlag = 0; //代表是否验证通过 1验证码正确 0验证码错误
if(“form”.equals(type)){
String authCode = (String)request.getSession().getAttribute(“authCode”);
String code = request.getParameter(“code”);
if(authCode.equals(code)){
trueFlag = 1;
}else{
trueFlag = 0;
}
}else if(“generateAuthCode”.equals(type)){
response.setHeader(“Pragma”, “No-cache”);
response.setHeader(“Cache-Control”, “no-cache”);
response.setDateHeader(“Expires”, 0L);

  int width = 60; int height = 20;BufferedImage image = new BufferedImage(width, height, 1);Graphics g = image.getGraphics();Random random = new Random();g.setColor(getRandColor(200, 250));g.fillRect(0, 0, width, height);g.setFont(new Font("Times New Roman", 0, 18));g.setColor(getRandColor(160, 200));for (int i = 0; i < 155; i++){int x = random.nextInt(width);int y = random.nextInt(height);int xl = random.nextInt(12);int yl = random.nextInt(12);g.drawLine(x, y, x + xl, y + yl);}String sRand = "";for (int i = 0; i < 4; i++) {String rand = String.valueOf(random.nextInt(10));sRand = sRand + rand;g.setColor(new Color(20 + random.nextInt(110), 20 + random.nextInt(110), 20 + random.nextInt(110)));g.drawString(rand, 13 * i + 6, 16);}//将验证码保存服务器session中request.getSession().setAttribute("authCode", sRand);g.dispose();try{//将图片写入输入流ImageIO.write(image, "JPEG", response.getOutputStream());}catch (Exception localException1){}

}
try{
//跳转回页面
response.sendRedirect(request.getContextPath()+"/index.jsp?result="+trueFlag);
}catch(Exception e){

}
}


http://chatgpt.dhexx.cn/article/H4u0H9Vc.shtml

相关文章

iOS 分割输入验证码的视觉效果

通常情况下&#xff0c;在用户注册或者登录的时候我们会用到手机验证码&#xff0c;而有时就会需要&#xff0c;分割输入验证码的视觉效果。 那这种情况&#xff0c;我们怎么实现呢&#xff1f; 在网上查了很多&#xff0c;好多都只是给了实现代码&#xff0c;给的东西都不是很…

input输入框模拟验证码输入效果

今天看到一个帖子&#xff0c;说到用input输入框模拟滴滴、摩拜等app验证码输入效果&#xff0c;提到了一个方案&#xff1a; 1、利用input来获得焦点&#xff0c;自动调用手机的数字键盘 2、实际将输入框用透明度隐藏 3、用label的for属性与input联动来显示输入的数字 于是…

vue实现验证码输入

需求&#xff1a;这种样式的验证码输入&#xff0c;进入页面时光标停留在第一个格子&#xff0c;随着输入的数字向后移动。 实现逻辑&#xff1a; ①首先考虑样式&#xff0c;将六个格子及获取光标的样式写出来。 ②需要一个input框作为输入&#xff0c;所以在页面上加input框&…

爬虫验证码-手动输入

一般网站登录的时候会有验证码的问题,下面是将验证码下载到本地,手动输入模拟登录。在请求的时候使用会话是为了保证获取的验证码、表单令牌等数据一致 import requestsfrom bs4 import BeautifulSoupheaders = {User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWeb…

小程序多个输入框输入验证码功能 实现

老套路,先上图 <view class"check"><!-- 输入核验码 --><view class"query"><view class"query_item_name">请输入核验码</view><view class"query_num_block"><input typenumber class"…

手机计算机上输入错误是什么意思,电脑输入验证码总是提示错误该怎么解决?...

不少同学都遇到过在页面中输入验证码总是错误的问题&#xff0c;并且不管更换几次验证码图片&#xff0c;依然提示验证码错误&#xff0c;着实影响心情&#xff0c;接下来小编总结了一部分造成验证码总是错误的原因以及解决办法&#xff0c;希望对大家有所帮助; 第一种&#xf…

Python模拟登陆古诗文网手动输入验证码显示验证码错误

Python模拟登陆古诗文网手动输入验证码显示验证码错误 import requests from lxml import etree sessionrequests.Session() headers {User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.128 Safari/537.36,}…

自定义验证码输入框:VerificationCodeView

先上两张效果图&#xff1a; 1.java类&#xff1a; package com...ui;import android.annotation.SuppressLint; import android.app.Activity; import android.content.Context; import android.content.res.TypedArray; import android.graphics.Color; import android.text…

案例:登录中输入验证码(Session及JSP技术应用)

案例&#xff1a;登录中输入验证码(会话技术) 1.案例需求&#xff1a;1.访问带有验证码的登录页面login.jsp2.用户输入用户名&#xff0c;密码以及验证码如果用户和密码输入有误&#xff0c;跳转登录页面。提示&#xff1a;用户或密码错误如果验证码输入有误&#xff0c;跳转登…