struts2 session不一致问题

比如说有如下场景:

 

第一个ajax请求到服务器用来保存用户 session.setAttribute("user",userObj);

然后第二个ajax请求到服务器来获取用户,这时候拿到的userObj为null. 怎么回事呢?

 

取到用户对象为null肯定是session对象不一致,session对象不一致肯定页面的sessionid不一样(用火狐firebug查看一下就能发现)

 

那么我们就可以推断出ajax提交请求的方式不一样了

 

第一个ajax请求是异步形式

第二个ajax请求是同步形式

 

这样就会出现问题

 

解决方法是统一用同步的方式

 

在做项目中也需要权衡什么时候用异步,什么时候用同步

 

一般是读取数据的时候用异步,提交数据的时候用同步

 

下面是jquery的异步同步提交方式:

$.ajax({
  url: "test.html",
  async: false/true,// (默认: true) 默认设置下,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为 false。
  success: function(html){
    $("#results").append(html);
  }
});

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值