千家信息网

html中获取session值的方法有哪些

发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,本文小编为大家详细介绍"html中获取session值的方法有哪些",内容详细,步骤清晰,细节处理妥当,希望这篇"html中获取session值的方法有哪些"文章能帮助大家解决疑惑,下面跟着小编的思路
千家信息网最后更新 2025年02月01日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获取。这种方式复杂了点,多一次远程访问,但是灵活方便。

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

问题描述:session中保存着UserInfo对象,成功登录后,在html中显示"欢迎xxx"

解决方法:通过ajax,json获取UserInfo数据,再显示

1.js

 

2.页面:

管理页面     
管理员:您好,感谢登陆使用!

3.实体:UserInfo

public class UserInfo {    private int UserInfoId;    private String userInfoName;    private String UserInfoPsw;    //省略get,set

4.LoginAction中:

public void getLoginName() {        System.out.println("getLoginUser");        HttpServletResponse response = ServletActionContext.getResponse();        response.setContentType("text/plain;charset=UTF-8");        PrintWriter out;        try {            String userName = ((UserInfo) ActionContext.getContext()                    .getSession().get("user")).getUserInfoName();            System.out.println(userName);            out = response.getWriter();            out.print(userName);            out.flush();            out.close();        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }     }

3.用response.sendRedirect("a.html?param=hello");用下面的JS方法

如:

var v=getUrlParameter('param');function getUrlParameter( name ){name = name.replace(/[]/,"[").replace(/[]/,"\]");var regexS = "[\?&]"+name+"=([^&#]*)";var regex = new RegExp( regexS );var results = regex.exec(window.parent.location.href );if( results == null ) return ""; else {return results[1];}}

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

读到这里,这篇"html中获取session值的方法有哪些"文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注行业资讯频道。

0