gpt4 book ai didi

java - session 属性从过滤器传递到 servlet 的机制是什么?

转载 作者:行者123 更新时间:2023-12-01 15:28:10 25 4
gpt4 key购买 nike

在一个网络应用程序中,我使用了多个过滤器,在其中一个过滤器中,我使用了 BalusC 描述的“ session 滥用”。基本上在过滤器中我做了这样的事情:

request.getSession().setAttribute("abuse", ...);

后来,在 Servlet 中,我读回了这个属性。

我使用 session 属性而不是请求属性,因为我正在执行重定向,这就是我迷失的地方......

浏览器收到 302 并进行重定向后,Tomcat(或任何其他 Java Web 应用服务器)如​​何知道后续 GET(重定向后的那个)与内部返回的 session 属于同一个“ session ”第一个过滤器(重定向发生之前的过滤器)?

即使客户端浏览器关闭了 JavaScript 和 Cookie,并且如果我禁用 JSESSIONID,此操作是否有效?

我应该指出,出于 SEO 和用户友好的目的,JSESSIONID 被禁用:就像 stackoverflow.com 永远不会显示其中包含毫无意义的技术的超长 URL 一样,我的 web 应用程序也不会而 JavaScript 和 Cookies 可以被用户关闭。所以我想知道即使这三个“客户端功能”不可用,我所做的“ session 滥用”是否会起作用。

最佳答案

如果您禁用了 cookie 并禁用了 url 重写,则 Servlet 容器无法跟踪 session 。实际上,我认为一些仍然可以使用 SSL - SSL 中内置了 session 跟踪,但我不确定许多 servlet 容器是否支持这种方法并且它需要纯 SSL。

如果您不跟踪 session ,则会创建每个 session ,然后将其孤立。

关于java - session 属性从过滤器传递到 servlet 的机制是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9918139/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com