在服务器端,我使用Java,在客户端使用Ionic1。
我正在将Java对象设置为这样的会话:
session.setAttribute("userId", userObj.getUserId());
设置会话后,我需要用另一种方法获取该会话,那次我正在使用这个
Long userId = (Long) session.getAttribute("userId");
如果我从移动设备向服务器发送请求,我将获得session.getAttribute值。
但是我从浏览器向服务器发送请求,那时我将得到session.getAttribute值为NULL
答案 0 :(得分:0)
确保仅在创建会话后调用getAttribute()。在没有会话存在时访问会话属性是一个常见的错误。 基本上,验证并确保会话存在,并且在尝试获取会话属性之前已在应用程序流中设置了属性值。
HttpSession session = request.getSession(true);
// true will create a session is does not already exists
if(session != null) {
// get your session attributes here.
// Your Session Attributes should be set before you're trying to access them
}