如何在js页面获取session

如何在js页面获取session,第1张

在jsp中使用js中的设置属性,进而获得session保存的属性值,实例如下:

session设置:

sessionsetAttribute("username",username);

sessionsetAttribute("password",password);

session获取:

username=sessiongetAttribute("username");

password=sessiongetAttribute("password");

JS是不能读取Session中的值的 。

session是服务器对象,javascript是客户端脚本,你能做的 *** 作就是把这个值用<%=%>输出到页面的javascript中参与运算,而无法直接用js调用的。

方法:

做一个AJAX来请求服务器, 返回session中的值 。

当然也可以在JSP中使用<%=%>这种东西来获取session中的值,例如:

<script language="JavaScript">

   var myName="<%=sessiongetAttribute("userName")%>";

alert(myName);

</script>

扩展资料:

关于上述session中是键值对:

EL

sessionsetAttribute("age","123");

${ sessionScopeage}  在页面上显示的就是123了

(此处空一行)

sessionScope指的是session的范围,类似还有requestScope,pageScope,contextScope

然后后面的age表示的是set属性时的key值

使用一下代码来获取:

javautilEnumeration e = requestgetSession()getAttributeNames();

while( ehasMoreElements()) {

String sessionName=(String)enextElement();

outprintln("\nsession item name="+sessionName);

outprintln("\nsession item value="+requestgetSession()getAttribute(sessionName));

}

String value=StringvalueOf(requestgetSession()getAttribute(sessionName));

session是服务器对象,javascript是客户端脚本,能做的 *** 作就是把这个值用<%=%>输出到页面的javascript中参与运算,而无法直接用js调用的。

具体的应用一般都是这样:

<script>

  function do(){

  var a='<%=sessiongetAttribute("userName")%>';

  //或者用var a="${sessionScopeuserName}"

 

}

</script>

此方法在静态页面中不可用,在javascript文件下不可用,用于jsp页面中嵌套的脚本中。

楼上的太复杂,session你可以看成一个数组,只是数组的下标是数字,比如a[1],而session下标是一个字符串,也就是他的key值。

你的问题我简单点回答。

获取session值:

string strSession = Session["user_name"]ToString();

就这麼简单!

怎样在html页面中取得session中的值

方法如下:

1首先呢session的key-value都是存在server的,浏览器HTML页面是没有办法直接取得session中的值,只有在html里能通过js拿到jesessionid之类的东西。

11、数据量如果小,可以考虑放到cookie里,传到客户端,html里用js就可以拿到。

12、如果数据量大,可以考虑单独做一个jsp或servlet,根据传来的session的key,返回序列化的session的值,比如json之类的。html里用js通过ajax获取。这种方式复杂了点,多一次远程访问,但是灵活方便。

如:<input type="text" value='<%#Session["username"]%>'>

2或者得通过后台才能获取,session是存在服务器端的,如果你用cookie的话,可以通过js获取。

比如:写个webservice ajax获取你要的session值 或者 利用利用模板语言输出。

3用responsesendRedirect("ahtmlparam=hello");用下面的JS方法

如:var v=getUrlParameter('param');

function getUrlParameter( name ){

name = namereplace(/[\[]/,"\\\[")replace(/[\]]/,"\\\]");

var regexS = "[\\&]"+name+"=([^])";

var regex = new RegExp( regexS );

var results = regexexec(windowparentlocationhref );

if( results == null ) return ""; else {

return results[1];

}

}

以上几种方法在html页面中取得session中的值

一般情况下 用SessiongetAttibute(String key)来获得Session对象中含有的关键字是key的对象。key 是通过SessionsetAttibute(String key ,Object obj)自己设定的一个索引关键字!Session对象怎么来的的呢 可以通过requestgetSession()来获得!

所以现在就明白了:通过requestgetsession()获得session 对象 再调用它的getAttibute(String key)方法来获得含有关键字“PASSPORT_NICKNAME”的对象

例子:

UserID = (String) requestgetSession()getAttribute("UserID");

以上就是关于如何在js页面获取session全部的内容,包括:如何在js页面获取session、在jsp中使用js怎样才能获取session的值、java如何获取web项目中的所有session等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9295700.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存