gpt4 book ai didi

java - 我该怎么办 session URL 很长,我无法附加 JSESSIONID=389729387392。解决方案是什么?

转载 作者:行者123 更新时间:2023-12-01 19:24:41 27 4
gpt4 key购买 nike

我得到了答案:如果我禁用了cookie,那么使用URL重定向我可以传递JSESSIONID,但我的URL已经很长,因为我使用它有约束的GET方法。那怎么办我应该使用我的 session 吗?我希望我的应用程序非常安全。这是在 GOOGLE 面试中向我的 friend 提出的问题之一。

最佳答案

除了使用单字母参数名称(例如 ?a=value1&b=value2&c=value3 或使用类似 RESTFul 的 URL(即只有路径信息,没有查询参数,例如 /value1)/value2/value3,可通过 servlet 中的 HttpServletRequest#getPathInfo() 访问)而不是 ?name1=value1&name2=value2&name3=value3,您还可以考虑对查询进行 Gzip 和 Base64 编码字符串,使其变得更短。JavaScript 和 Java 都能够对其进行(解)压缩和(d)e(n)编码。您最终可以在压缩/编码之前将查询字符串格式化为 JSON,如果是这样,它会更短数组/集合/映射。

也就是说,您确定请求 URL 通常那么长(假设超过 255 个字符),不友好吗?为什么您需要传递那么多信息?他们应该维护客户端状态吗?如果是这样,您不应使用 URL,而应使用服务器端已与 jsessionid Cooke 关联的 HttpSession 实例。使用HttpSession#setAttribute()在 session 中存储一些信息并使用 HttpSession#getAttribute()来检索它。

关于java - 我该怎么办 session URL 很长,我无法附加 JSESSIONID=389729387392。解决方案是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2066000/

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