Json 会话变量不会在Spring MVC控制器的下一个请求中保留值

Json 会话变量不会在Spring MVC控制器的下一个请求中保留值,json,spring,session,spring-mvc,Json,Spring,Session,Spring Mvc,我有应用程序范围的单控制器 @RequestMapping(method = RequestMethod.POST,value="services") @ResponseBody mwpWebServices(@RequestBody String data, HttpServletRequest request, HttpServletResponse response) throws JSONException, UnknownHostException, MongoException {

我有应用程序范围的单控制器

@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,它看起来像 {“方法”:“登录”,“操作”:“身份验证”,“参数”:“某些数据”}

现在当方法是login时

我调用另一个类的某个方法,将会话对象传递给该类,该类在会话中存储了一些值

但当下一次请求到来时,会话变量不会保持值

if(method.equals("login"))
    {
        someClassObj.login(params);
        //which stores some value in session variable "somevar"
    }
如果不传入会话或请求对象,它如何在会话变量“somevar”中存储“somevalue”


如果您没有在中传递会话或请求对象,它如何在会话变量“somevar”中存储“some value”?

的HttpSession要求客户端(即浏览器)在cookie中存储会话id。
因此,我的浏览器的cookie已关闭,这就是为什么每个请求都会带来新会话id的原因。HttpSession的HttpSession要求客户端(即浏览器)将会话id存储在cookie中。
所以我的浏览器的cookie关闭了,这就是为什么每个请求都会带来新的会话id

@Sean我正在将会话传递给登录功能。忘了在这里提到它。。sorry@Sean但我想说的是,会话变量也会为空say@Ravi好的,听起来每个请求都有一个新的会话。您的客户端是否存储/发送Cookie或以其他方式跟踪会话?@Sean..否我们所做的是第一次向客户端发送会话ID,客户端在会话期间每次发出请求时都发送该IDsession@Ravi好的,那么如何将该ID与会话相关联?jSessionId=URL?@Sean我正在将会话传递给登录函数。忘了在这里提到它。。sorry@Sean但我想说的是,会话变量也会为空say@Ravi好的,听起来每个请求都有一个新的会话。您的客户端是否存储/发送Cookie或以其他方式跟踪会话?@Sean..否我们所做的是第一次向客户端发送会话ID,客户端在会话期间每次发出请求时都发送该IDsession@Ravi好的,那么如何将该ID与会话相关联?jSessionId=URL?我错误地忘了在浏览器的cookie上添加内容错误地,我忘了在浏览器的cookie上添加内容