我很难理解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如何识别新会话,以及如何在“测试”环境中模拟不同的会话。
1条答案
按热度按时间eivnm1vs1#
找到答案-bean不见了
@Component
注解。有了这个jsession,就创建了id cookie,显然这就是spring识别会话的方式。