springrest如何识别新会话?

ars1skjm  于 2021-07-23  发布在  Java
关注(0)|答案(1)|浏览(360)

我很难理解springrest如何识别新的会话。假设我们有这样定义的简单会话bean:

@SessionScope
public class Counter {

  private int counter;

  public int inc() {
    return counter++;
  }
}

我们还有一个简单的rest控制器,它提供了调用 inc() 方法并返回其当前值。我希望每个请求(在postman中发出)都会得到值1,因为无法识别会话。例如,没有像传统的基于servlet的应用程序那样的jsession\u id cookie。我实际得到的是计数器的增加值,不管我是在 Postman 、网络浏览器还是curl中提出请求。即使在私有模式下使用浏览器,仍然引用同一个bean示例。问题是spring如何识别新会话,以及如何在“测试”环境中模拟不同的会话。

eivnm1vs

eivnm1vs1#

找到答案-bean不见了 @Component 注解。有了这个jsession,就创建了id cookie,显然这就是spring识别会话的方式。

相关问题