html中获取session值的方法有哪些
本文小编为大家详细介绍“html中获取session值的方法有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“html中获取session值的方法有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
1.首先呢session的key-value都是存在server的,浏览器HTML页面是没有办法直接取得session中的值,只有在html里能通过js拿到jesessionid之类的东西。
1.1、数据量如果小,可以考虑放到cookie里,传到客户端,html里用js就可以拿到。
1.2、如果数据量大,可以考虑单独做一个jsp或servlet,根据传来的session的key,返回序列化的session的值,比如json之类的。html里用js通过ajax获取。这种方式复杂了点,多一次远程访问,但是灵活方便。
如:<input type="text" value='<%#Session["username"]%>'>
2.或者得通过后台才能获取,session是存在服务器端的,如果你用cookie的话,可以通过js获取。
问题描述:session中保存着UserInfo对象,成功登录后,在html中显示“欢迎xxx”
解决方法:通过ajax,json获取UserInfo数据,再显示
1.js
<scripttype="text/javascript"src="js/jquery-1.8.3.js"></script><scripttype="text/javascript">$(function(){$.ajax({type:"get",url:"login!getLoginName.action",dataType:"text",success:function(result){document.getElementsByTagName('b')[0].innerHTML=result;},error:function(){alert("請求失敗");}});});</script>
2.页面:
<html><head><title>管理页面</title></head><body><table><tr><tdwidth="74%"height="38"class="admin_txt">管理员:<b></b>您好,感谢登陆使用!</td></tr></table></body></html>
3.实体:UserInfo
publicclassUserInfo{privateintUserInfoId;privateStringuserInfoName;privateStringUserInfoPsw;//省略get,set
4.LoginAction中:
publicvoidgetLoginName(){System.out.println("getLoginUser");HttpServletResponseresponse=ServletActionContext.getResponse();response.setContentType("text/plain;charset=UTF-8");PrintWriterout;try{StringuserName=((UserInfo)ActionContext.getContext().getSession().get("user")).getUserInfoName();System.out.println(userName);out=response.getWriter();out.print(userName);out.flush();out.close();}catch(IOExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}}
3.用response.sendRedirect("a.html?param=hello");
用下面的JS方法
如:
varv=getUrlParameter('param');functiongetUrlParameter(name){name=name.replace(/[]/,"[").replace(/[]/,"\]");varregexS="[\?&]"+name+"=([^&#]*)";varregex=newRegExp(regexS);varresults=regex.exec(window.parent.location.href);if(results==null)return"";else{returnresults[1];}}
以上几种方法在html页面中取得session中的值.
读到这里,这篇“html中获取session值的方法有哪些”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注亿速云行业资讯频道。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。