我是Angular 5和Spring MVC的新手,我正在尝试为我的应用程序创建登录功能。
我们没有使用Spring Security,因为我们只使用Spring MVC模块提供的基本会话管理。
我在JsessionId
生成的前端保存LoginSessionId
(比如LoginController
),在向后端发送第一个请求后尝试验证我的用户时:
在LoginSessionId
的帮助下,我在“授权”标题中发送了与HttpInterceptor
相同的请求:
但登录后,Angular 5正在Cookie中发送一个新的JsessionId
,并在第一次请求时丢弃之前返回的JsessionId
。
在我的后端(Spring MVC)中,新的Sessionid
从第二个请求开始生成,之前生成的SessionId
(LoginSessionId
)被丢弃。
我想在后端操作中保存并使用LoginSessionId
。
请指导我怎么做?我正在使用Apache Tomcat 8.0.43和Spring MVC 5.0.4版。我已经启用了CORS标头。如果需要更多信息,请告诉我。
我终于找到了这个问题。我没有在第一个请求中添加标头withCredentials
。所以我的后端服务器只是从第二次请求开始识别JsessionId
。