首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SessionID:如何获取get SessionID参数的名称?

SessionID:如何获取get SessionID参数的名称?
EN

Stack Overflow用户
提问于 2009-11-12 14:18:22
回答 1查看 7.4K关注 0票数 1

似乎GET请求中的参数名称(如Tomcat中的SessionID )在servlet规范中没有标准化吗?如何获得SessionID的(专用)名称?(至少在Websphere中,似乎有可能更改SessionID-Parameter的名称)

=>底层的问题是,我需要用会话ID在servlet中编码一个URL,但是"response.encodeURL()“方法似乎只在Cookies被禁用的情况下才这样做(=>therefor使用URL-用URL中的sessionID重写)。

在servlet中始终使用会话ID对URL进行编码的替代方案是什么?正如第一个问题所暗示的那样,我想自己构建sessionid,但是我需要会话I参数名称,但是这个名称似乎还没有标准化,所以我需要从某个地方获取参数名称.)

更新:目的是保留Servlet容器提供的SessionManagement功能,而不是完全关闭它。我需要将一个回调URL传递给一个第三方系统,我希望该系统始终包含SessionURL。因此,我只想将这个单一的 URL与sessionID一起编码,以最小化任何安全问题.

非常感谢简

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-11-12 14:26:51

jsessionid实际上不是一个请求参数,它被编码到URL本身,然后在容器到达控制器之前被解码和删除。jsessionid本身的值可以从HttpSession.getId()中检索。

如果要阻止Tomcat使用cookie,则可以在WEB-INF下提供特定于tomcat的WEB-INF文件,其中包含如下内容:

代码语言:javascript
复制
<Context cookies="false" path="/path/to/my/webapp">
</Context>

这将禁用该IDs应用程序的所有cookie,tomcat将自动将所有会话ID编码到URL上。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1722493

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档