gpt4 book ai didi

java - JSessionId 在登录后发生变化,Angular 5 正在通过请求发送新的 JSessionID 并丢弃旧的 jsessionid

转载 作者:行者123 更新时间:2023-11-30 05:56:07 32 4
gpt4 key购买 nike

我是 Angular 5 和 Spring MVC 的新手,我正在尝试为我的应用程序创建登录功能。

我们没有使用 Spring Security,因为我们只使用 Spring MVC 模块提供的基本 session 管理。

在发送后尝试对我的用户进行身份验证时,我将 JsessionId (例如 LoginSessionId)保存在由 LoginController 生成的前端中对后端的第一个请求:

Basic Session Creation in spring MVC

HttpInterceptor 的帮助下,我在“Authorization” header 中的每个请求中发送相同的 LoginSessionId:

HttpInterceptor

但是登录后,Angular 5 会在 Cookie 中发送一个新的 JsessionId ,并丢弃之前从 cookie 返回的 JsessionId 以响应第一个请求。

在我的后端(Spring MVC)中,从第二个请求开始生成一个新的Sessionid,并且先前生成的SessionId(LoginSessionId)被丢弃。

Screenshot of multiple HttpSessions

我想在后端操作中保存并使用 LoginSessionId

请指导我该怎么做?我正在使用 Apache Tomcat 8.0.43 和 Spring MVC 版本 5.0.4。我已经启用了 CORS header 。如果需要更多信息,请告诉我。

最佳答案

终于找到问题了。我没有在第一个请求中添加 header withCredentials 。因此,我的后端服务器仅从第二个请求开始识别 JsessionId

关于java - JSessionId 在登录后发生变化,Angular 5 正在通过请求发送新的 JSessionID 并丢弃旧的 jsessionid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53141015/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com