我有应用程序范围的单控制器。
@RequestMapping(method = RequestMethod.POST,value="services")
@ResponseBody
mwpWebServices(@RequestBody String data, HttpServletRequest request, HttpServletResponse response) throws JSONException, UnknownHostException, MongoException
{
HttpSession session = request.getSession();
......
String method = jsonObj.getString("method");
....
if(method.equals("login"))
{
someClassObj.login(params);//which stores some value in session variable "somevar"
}
if(method.equals("other"))
{
System.out.println(session.getAttributes("somevar"));//coming null
}
}
现在“数据”将收到JSON字符串 然后我将解析为看起来像的JSONObject {“method”:“login”,“action”:“Auth”,“params”:“some data”}
现在当方法登录时
我调用另一个类的方法,我传递会话对象,在会话中存储一些值
但是当下次请求到来时,会话变量不会保持值......
答案 0 :(得分:0)
if(method.equals("login"))
{
someClassObj.login(params);
//which stores some value in session variable "somevar"
}
如果你没有传递Session或Request对象,如何在会话变量“somevar”中存储'某些值?
答案 1 :(得分:0)
HttpSession要求客户端,即浏览器将会话ID存储在cookie中。 所以我的浏览器的cookie已关闭,这就是每个请求带来新会话ID的原因