session取验证码问题,同一用户为什么有两个session
 为什么我登录的时候输入验证码和产生的验证码不匹配,打印了一下session发现生成验证码的session和登录时获取的session不是一个,一个用户不是应该只有一个session吗,求解
# 产生验证码的session
// 将图像输出到客户端
           ServletOutputStream sos = response.getOutputStream();
           ByteArrayOutputStream baos = new ByteArrayOutputStream();
           ImageIO.write(image, "JPEG", baos);
           byte[] buffer = baos.toByteArray();
           response.setContentLength(buffer.length);
           sos.write(buffer);
           baos.close();
           sos.close();
           // 将验证码放到 session 中
           session.setAttribute("checkCode", new String(rands));
           System.out.println("1"+session);


## 验证时的session
private String name;
    private String password;
    private String checkcode;
    private String check;
    private HttpServletRequest request;
    private HttpSession session;

    public LoginAction() {

        request =ServletActionContext.getRequest();
        session = request.getSession();
    }
    public String execute() throws Exception {
        String checkcode1=(String)session.getAttribute("checkCode");
        System.out.println("2"+session);

这两个打印出来的session不同,求解怎么办



0
扫码支付0.1元 ×
其他相关推荐
javaweb首次访问页面 验证码session不同步、不一致问题
在我的获取验证码图片的代码中,System.out.println一下 sessionId 470adf31-c964-48a6-9402-79e90b03b603 然后在登陆的service里面同样System.out.println一下 sessionId d7cec17d-4bfa-498e-839c-dc760a1c77eb 居然不一样诶。。。
javaweb登录页面验证码验证以及session中验证码值获取不同步的问题
一、html前端代码: /image/random.png?'+new Date()" src="/image/random.png" alt="点击刷新验证码" width="80" height="25"/> 二、web.xml代码: AppRandomImage com.cct.schoolyard.web.servlet.AppRandomImage
同一Tomcat下session共享及用户验证方案
简单介绍了一种通过tomcat配置session共享,以及提供了一种验证用户登录的解决方案。
解决同一浏览器登录多个账户session共享问题
首先session是同一PC同一浏览器共享的.比如如下代码:public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException { HttpSession hs = request.getSession();
同浏览器不同窗口不同用户Session问题
正对java Web项目,同浏览器同时打开两个登录窗口(不同Tag),用不同用户登录,为避免使用同一个Session,需要使用这段代码。否则先登录的用户的Session会变成后登录用户的Session.相关系统使用权限也会变。
无法获取保存在session中的验证码
-
多tomcat 同一个浏览器 同一个项目 会导致session覆盖
问题描述 同一台服务器, 安装两个tomcat ,端口不一样, 姑且分别称为tomcat1 和 tomcat2, 在两个tomcat下分别都部署了A和B两个项目 1. 同一个浏览器访问同一个tomcat的不同项目: 访问tomcat1(tomcat2)的A并登陆, 再访问tomcat1(tomcat2)的B , 测试结果两个项目的访问互不干扰; 2. 同一个浏览器访问不同tomcat的不同
关于两个用户用同一浏览器不能同时登录同一网站的问题(session覆盖问题)
mask和一个小伙伴最近在帮学校搭一个网站,大体完工后,小伙伴告诉mask网站有bug——使用两个用户登录该网站时,第一个用户会被挤掉。拿到问题时,我就觉得应该是session的问题(网站使用session进行身份验证),于是我用两个不同的浏览器分别登录这两个账户,发现没再出现这一问题,看了果然应了我的想法,session设置有问题。 想了一下网站的应用场景也没在意这个问题,但是我一直记着。今天就...
通过SessionID和用户名来保证同一个用户不能同时登录
可以通过SessionID和用户名来保证同一个用户不能同时登录的问题,下面程序模仿了QQ的登录,当登录后判断当前帐号是否已经登录,如果登录。则踢掉以前登录的用户。 重置sessionID private void createNewSession(HttpServletRequest request, HttpServletResponse response, EntCurrent
同一个服务器上的不同项目要注意session的死锁问题
同一台服务器上的不同项目一定要注意session的死锁问题
同一张表不同SESSION相互持有对方记录引发的死锁
同一张表不同SESSION持有不同记录 SQL> create table t1(id int); Table created. SQL> create table t2(id int); Table created. SQL> select * from t1; ID ---------- 1 2 SQL> select *
浏览器多窗口共用session引发的混乱
话说上礼拜到浙江移动给客服MM演示我们系统的网站,“...支持普通客服和客服管理员两种不同级别。您看工作量统计这里,咱们用admin这个号登录,然后...”   “打断下,你用ie再开一个标签页,用custom登录下,我想先看下普通客服流程的演示”。顺利通过,我正暗自松了一口气,“现在看admin吧”。操作了两下我突然眼前一黑,怎么变成普通客服了。哦卖糕的,为什么每次做公开培训和系统演示的时候...
同一台服务器部署多个WEB应用,SESSION冲突的解决方法

   由于一台服务器上使用Tomcat部署多个WEB项目,而项目因为用到框架都是一样的,导致同时运行,session相互冲突,这个登录后,那个就得重新登录,造成了使用不方便,解决办法如下:
 在server.xml文件,host的标签页下,加上Context标签,标签内容可以这样写:
 
 <Context path=”” docBas...
jsp 验证码 保存到session中 第一次登录失败问题
项目中验证码的实现思路:登录页面 调用 jsp页面 生成验证码图片 并把验证码保存到 session中 用户登录的controller 中 把用户输入的验证码和 session中取出的验证码 进行比较 ,相同则验证码输入正确。 测试中出现一个bug ,bug描述:IE浏览器下 用户第一次登录 总是显示 验证码错误  登录失败,除第一次外都能登录成功。登录成功后 退出,再次登录没问题。直接关闭...
jsp中生成的验证码和存在session里面的验证码不一致的处理
今天在调试项目的时候发现,在提交表单的时候的验证码有问题,问题是这样的:就是通过debug模式查看得知:jsp页面生成的验证码和表单输入的页面输入的一样,但是到后台执行的时候,你会发现他们是不一样的,现在上图看看: 1.这是表单提交的时候: 2.这是后台得到的生成的验证码: 3.这是后台得到输入的验证码: 这样的问题还是头一次出现,以前没遇到过,经过
同域名下的多项目谨防sessionid互相影响,造成严重后果
同域名下的多项目谨防sessionid互相影响,造成严重后果,保持咱程序猿的优良传统,独立的命名空间,严格的洁癖症,处事不惊的顽强能力。转入正题 已我开发cctv项目为例,当然cctv愿意找我,我是很乐意效劳的,哈哈!!不过我是无证程序猿,很可能去了也是临时工,好吧,我还是拿他做例子吐槽吧: www.cctv.com/zhidao www.cctv.com/news 这里将zhidao、
session冲突问题产生的原因和解决方法:
背景知识:     1. cookie与session的关系        cookie和session的方案虽然分别属于客户端和服务端,但是服务端的session的实现对客户端的cookie有依赖关系的,上面我讲到服务端执行session机制时候会生成session的id值,        这个id值会发送给客户端,客户端每次请求都会把这个id值放到http请求的头部发送给服务端,而这个i
session 同一个网站获取不到的问题
spring mvc跳转问题 : redirect:+"http://192.168.x.x:3340/xxxx/index.html(项目全路径)" 在部分版本的tomcat下不会把session信息带过去,可写成redirect:/index.html tomcat 7.0.40 中没问题。但是 tomcat 7.0.67 中有问题 猜测低版本下直接就是跳转了。 但是高版本严格一些,相当
实现多域名下共用一个SESSION
多域名共用一个SESSION,这是很多人都梦想的事情。各位多域名站长要仔细看了..
session共享问题(一)----同一tomcat多个应用session问题
问题描述: 最近一直在研究session共享的问题,现在分享一下我最近对这个问题的理解。这需要分不同情况下,不同的项目部署情况对应的解决方式也不一样。今天我讲的
JSP验证码与session不一致处理方法
今天在调试项目的时候发现,在提交表单的时候的验证码有问题,问题是这样的:就是通过debug模式查看得知:jsp页面生成的验证码和表单输入的页面输入的一样,但是到后台执行的时候,你会发现他们是不一样的,现在上图看看: 1.这是表单提交的时候: 2.这是后台得到的生成的验证码: 3.这是后台得到输入的验证码: 这样的问
同一个服务器多个Tomcat产生session顶替现象。
阿萨德
解决应用服务器集群后session问题
一. 何为session 用户使用网站的服务,基本上需要浏览器和web服务器进行多次交互,web服务器如何知道哪些请求是来自哪个会话的? 具体方式为:在会话开始时,分配一个唯一的会话标识(sessionId),通过cookie把这个标识告诉浏览器,以后每次请求的时候,浏览器都会带上这个会话标识来告诉web服务器请求是属于哪个会话的。如果遇到禁用cookie的情况,一般的做法就是把这个会话标识放
同一个ip,不同端口号,session失效
问题在一台物理机上放了两个Tomcat,然后,放了两个工程,发现,在系统A中登录会把B系统的用户踢下来;简单来说,配置如下 server上放着TomcatA和TomcatB;projectA放在TomcatA中;projectB放在TomcatB中; 工程都映射的根路径,没有工程名字;也就是说,通过ip和端口号可以直接访问工程,如下 http://ip1:7777/ http://ip1:8
同一个控制器中无法获取session
今天遇到一个问题,问题的现象为:在一个方法中设置了session在下一个方法中却得不到 折腾了一天,终于把这问题给搞定了,原因是由于系统磁盘大小不够了,系统盘总共20G, tmp目录下的文件就有16个多G了,再加上一些其他的,当然磁盘不够了,所以就造成了这个问题; 解决的方法就是加大容量罢,或者写定时任务,将日志转到其他磁盘去!   解决这个问题后,在网上看了一下下面的的博文,感觉还是不错
同一个浏览器开不同窗口使得session不同的方法
Firefox:编辑快捷方式的目标,后面加上 -p -no-remote Chrome:打开新的隐身窗口 IE:文件 --> 新的会话
在同一个tomcat下,不同的web项目共享session
有时我们会遇到一个大点的项目,为了方便实现有些功能,我们会把项目拆成不同的独立web项目。 但我们在管理这些项目时,只有一个登陆口,然后在其他项目取session来实现身份的验证。     1、配置tomcat下 conf/server.xml文件,在配置如下:                    unpackWARs="true" autoDeploy="true"      
55 同一浏览器session会串的问题
E6是每新开一个窗口一个session,基本一定不会串  IE7是同一个窗口里面多个Tab页共享一个Session,同窗口的会串  IE8是所有窗口所有标签Tab页共享一个session,除非是用那个文件菜单新开会话打开窗口则独立session  FireFox和Chrome则缺省就是所有窗口所有Tab共享一个Session。 所以要解决这个不同帐户在同一客户端使用同种浏览器同时登录的问题
同一个tomcat下不同项目间session共享问题解决方案
解决方案: 1、修改tomcat的server.xml文件 每一个web应用程序都有唯一一个ServletContext实例对象,被该web应用下面的每一个servlet共享。通过修改tomcat的server.xml,使不同web应用的ServletContext可以互相访问。然后,用ServletContext的setAttribute()方法把session存入ServletContext中...
项目部署:同一个ip,不同端口号,session失效
背景 我有两个工程projectA、projectB,projectA放在TomcatA中,projectB放在TomcatB中,TomcatA、TomcatB在一台server上。  工程都映射的根路径,不用project名字就可以访问,如下 http://ip1:7777/  http://ip1:8080/ 问题 先在7777登录,然后再在8080登录,发现会把7
彻底解决小程序无法触发SESSION问题
转自冯奎博客fengkui.net 一、首先找到第一次发起网络请求的地址,将服务器返回set-cookie当全局变量存储起来 wx.request({ ...... success: function(res) { console.log(res.header); //set-cookie:PHPSESSID=ic4vj84aaavqgb800k82etisu0; path...
利用Session区域完成登录页面校验(包含验证码校验)
网站登录页面验证码校验,通常是服务器通过一个servlet生成验证码,并将验证码存储到session区域中(而非servletcontent或者request域对象中,前者会导致所有人共用一个验证码,而后者则会导致机器人程序获取验证码刷网页)。因此,我们可以在session区域中获取验证码,并与客户端提交的验证码进行对比,若一直则连接数据库进行用户名密码校验;反之则跳转至当前页面,并返回“验证码错...
为什么session中的验证码 比图片中慢半拍
code.php代码 <?php session_start(); function create_code(){ for($i=0;$i<4;$i++){ $_code.=dechex(mt_rand(0,15)); } $_SESSION['code']=$_code; $_width=75; $_height=25; $_img=imagecreatetruecolor($_width,
Spring,Struts2,Shiro中使用google验证码Kaptcha 获取不到session中验证码的解决方法
Spring,Struts2,Shiro中使用google验证码Kaptcha 获取不到session中验证码的解决方法   Kaptcha验证码的原理:   前台请求一个图片,该图片src属性指向的url其实是在web.xml中配置的一个servlet,该servlet由Kaptcha提供,   就是随机生成一串字符,然后存入session中,再将字符转成图片传到前台.   ...
不同用户之间session内容互相冲突
现象是:     A用户在1.jsp页面中访问数据库,返回的是一个对象,用下面这种办法:     session.setAttribute(&quot;obj&quot;,myobj);     把这个对象放到session中。然后在2.jsp中用     MyObjects   obj=(MyObjects)session.getAttribute(&quot;obj&quot;);     方法得到这个对象,再从中取值。 ...
java实现验证码生成,解决在页面验证时候session获得的总是前一次值的问题
生成验证码jspString path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%>Color getRandColor(int fc,int bc){//给定范围获得
Session的时效性——由验证码引出的问题
Session的时效性——由验证码引出的问题  (对jsp servlet tomcat 的理解) 目录 Session的时效性——由验证码引出的问题    1 1、理解JSP、servlet、web容器    1 1.1、Jsp    1 1.2、Servlet    3 1.3、Web容器    6 2、好了,当一切准备工作做完,来看一个结合三者的例
ThinkPHP中利用SESSION实现用户登录验证的方法
用户登上一个主页无非有这么两种状态,一种是类似于游客的身份登录,另一种是曾经已经登陆过的身份即经过服务器验证过的身份登录。 针对这两种登录,主要说一下: 我们在使用thinkphp的时候,首先,他是不提高登录验证功能的,仅仅是在路径方面做的相对比较安全,因为我们如果不对登录身份进行充足的验证,用户就完全可以去试着登录你的后台管理,那么这是非常可怕的,所以,首先要明白一个非常重要的业务逻辑。
session 获取不到
session获取不到,直接更换环境就解决了这个问题,网大神指点一下这其中的原理
使用session实现同一账号只能同时一个人使用
使用session实现同一账号只能同时一个人使用 今天我们要讲的就是 实现同一个账号只能同一时间让一个人使用。实现起来也是非常的简单! (其实我这里讲到的是我前几天做出来的一个大概核心代码和核心思路。我也是查遍了很多网站,看了很多人的源码然后都用不上。于是乎我就自己根据session的一下属性 自己做了一个简单版的session,并且已经可以运行的,单账户只限同一时间同一个人使用,一般学...
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 云计算专业培训有哪些问题 python验证码+深度学习