我正在开发基于Spring MVC的Java应用程序。 打开浏览器窗口时,会创建会话ID。 在服务器端,我们可以获得会话ID,如下所示
httpServletRequest.getSession().getId()
有没有办法只使用javascript获取此会话ID?我的意思是在客户端?
答案 0 :(得分:2)
将会话ID写入html中隐藏的html字段,然后使用javascript获取此字段的值
答案 1 :(得分:2)
考虑到你只想使用javascript:没有这样的解决方案。 原因是javascript在您的浏览器和服务器上的会话上执行。
但是,在将某些值分配给var my_session
jquery.cookie.js :https://raw.github.com/carhartl/jquery-cookie/master/jquery.cookie.js
这是一个很好的小型库,用于在cookie中存储数据。
请参阅此小提琴:http://jsfiddle.net/fhe27/3/
var my_session="123456789";
$.cookie('session_id',my_session);//drop a cookie
var my_session = $.cookie('session_id');//read a cookie
否则,@ samir turgay提供的灵魂也很不错。
答案 2 :(得分:1)
var strCookies = document.cookie;
var cookiearray = strCookies.split(';')
for(var i=0; i<cookiearray.length; i++){
name = cookiearray[i].split('=')[0];
value = cookiearray[i].split('=')[1];
if(name == 'sid')
sid = value;
}
如果你谷歌你会得到它
答案 3 :(得分:1)
您可以像这样定义js变量
var jsessionId = '${cookie.JSESSIONID.value}';