上篇博文里主要用javabean,servlet实现图像验证码!
但是,在login.jsp中,总是发现验证码于存在session中的不一致,慢了一拍,不同步
其实
我们忽略了一个问题,三层架构中,验证码的校验不是在显示页面login.jsp
真正的校验是在服务器端,表单提交后验证的~~~~~
在接收信息的servlet中,我们设置校验测试
request.setCharacterEncoding("gbk");
HttpSession session=request.getSession(true);
String certCode=(String)session.getAttribute("certCode") ; //得到生成图片时的servlet
String code=request.getParameter("code");//得到用户提交的验证码
try{
if(!certCode.equals(code))//比对
request.getRequestDispatcher("Message.jsp?msg=验证码错误").forward(request, response);
}catch(Exception e)
{
e.printStackTrace();
}
另:关于验证码的刷新补充在上一篇中
本文探讨了使用JavaBean和Servlet实现图像验证码的过程,并解决了登录页面验证码与session中存储的验证码不同步的问题。通过在servlet中进行验证码的校验,确保了用户输入的验证码与系统生成的验证码的一致性。

3820

被折叠的 条评论
为什么被折叠?



