我已经设置了我的 spring 来维护一个对象上的 HTTP 会话,如下所示:
@Component
@SessionScope
public class Basket { .. }
控制器:
@PostMapping(path="/basket/addItem/{user}", consumes = "application/json", produces = "application/json")
public Basket createBasket(@PathVariable String user, @RequestBody Item item) {
System.out.println("POSTING..................................");
return basketService.addItem(user, item);
}
现在,当我使用 REST 客户端时,在 firefox 中我可以看到会话 bean 是在持续时间内创建和维护的 - 多次调用。我可以附加到对象。如果我尝试另一个客户端,它会使用自己的 bean 获得自己的会话。伟大的..
spring 记录以下内容:
Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [269] milliseconds.
然而,我试图在 react 中创建一个基本的前端,当 react 使用 axios 发出请求时,它每次都会得到一个新的 bean,这意味着会话必须在每次调用后结束。那是对的吗?或者我没有将它绑定到react应用程序......
也许我采取的方法不正确,也许我应该使用不同的方法,我正在尝试了解 Spring Boot,所以它是一个基本项目......现在我想维护购物车的用户会话。所以后续调用我可以附加到对象...