我用的是SimpleCaptcha
我的web.xml看起来像一个这里
<servlet>
<servlet-name>StickyCaptcha</servlet-name>
<servlet-class>nl.captcha.servlet.StickyCaptchaServlet</servlet-class>
<init-param>
<param-name>width</param-name>
<param-value>250</param-value>
</init-param>
<init-param>
<param-name>height</param-name>
<param-value>75</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>StickyCaptcha</servlet-name>
<url-pattern>/captcha</url-pattern>
</servlet-mapping>我在视图中添加了一个刷新,如这个答案中所描述的
<script type="text/javascript">
function reloadCaptcha(){
var d = new Date();
$("#captcha_image").attr("src", "/captcha?"+d.getTime());
}
</script>
...
<img id="captcha_image" src="/captcha_generator.jsp" alt="captcha image" width="200" height="50"/>
<img src="reload.jpg" onclick="reloadCaptcha()" alt="reload"width="40" height="40"/>但是当我按下刷新按钮时,什么都不会发生。另外,当我试图调用.../captcha?4324321时,它仍然打印相同的captcha (根据我理解的用户会话)。
我还使用了spring和。
发布于 2013-10-11 10:30:11
用nl.captcha.servlet.SimpleCaptchaServlet代替nl.captcha.servlet.StickyCaptchaServlet解决了这个问题
因为StickyCaptchaServlet使用SessionId来创建映像,而SimpleCaptchaServlet没有
发布于 2014-07-28 15:21:24
我认为您可以尝试:$("#captcha_image").attr("src","/captcha_generator.jsp");而不是:$("#captcha_image").attr("src",“/captcha?”+d.getTime();
https://stackoverflow.com/questions/19315725
复制相似问题