jsp - tomcat jsp解析

标签 jsp tomcat servlets captcha

我有一个带有下一行的 jsp 文件:

<img src="/captcha"/>

还有一个映射到“/captcha”的 servlet。 这是怎么回事(在我看来):当用户请求 jsp 文件时,Tomcat 在一个线程中解析它并在新线程中调用 servlet。 我希望先执行 servlet 请求,然后再呈现 <img srс="/captcha"/> 之后的 jsp 代码 有办法吗?

抱歉,我的解释很糟糕。

更新 感谢 Elliott Frisch 阐明了它的工作原理。 让我更具体一点。 servlet 将一些值赋给 cookie,稍后在 jsp 中请求 <input type="hidden" name="captcha-id" value="${cookie.captchaId.value}"> .在 servlet 完成执行之前,浏览器会遇到这一行。结果,我看到了无效的 cookie 值。你能告诉我如何处理吗?

最佳答案

正如 Elliot 所解释的请求流程的工作原理:您为什么要依赖于在请求中查找验证码信息 - 例如通过输入字段/参数?当您提交请求(包括已解码的验证码)时,无论如何您都会获得验证码 cookie,并且可以将该值与提交的手动解密值进行比较。问题已解决,不再依赖模糊的请求顺序。

这只会在人们同时打开多个带有验证码的页面并且您的验证码总是覆盖 cookie 的情况下失败。但我猜这个用例很少见。

关于jsp - tomcat jsp解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37353265/

相关文章:

java - 带有嵌入式 Tomcat 和多个环境的 Spring Boot 项目

java - Web 应用程序 java 中的配置属性

java - Servlet RequestDispatcher 不转发

java - 将链接值作为 href 标记中的变量传递

eclipse - 用于 Web 的免费 AspectJ 代码示例

java - HTTP 状态 404 Spring MVC

java - 部署 Java Web 应用程序。一些 listenerStart 错误

java - 从数据库动态显示多个图像到jsp?

java - 我可以在 jsp fmt :messages instead of index numbers? 中使用实际的参数名称吗?如果可以,怎么办?

Javascript: "is not a function"错误