从初始页面加载开始,Angular Java项目管理会话

时间:2018-07-09 10:40:19

标签: java angular rest spring-boot session

在Angular 5 + Spring启动应用程序中。 SPA角度应用程序通过index.html加载。

我的要求是在企业验证码javascript库中设置会话ID,该库将作为首页组件的一部分加载。

我的问题是,角度应用程序是通过index.html从tomcat加载的,而tomcat尚未启动任何会话。

在通常情况下,我们将使用localStrorage的无状态委托和基于令牌的身份验证。

但是在这种情况下,由于与企业验证码实现绑定,因此必须在js加载时间中传递会话ID,然后在验证时间中也传递会话ID(这通过其余端点调用发生)。 企业验证码是这样的,

  

使用会话ID加载Javascript对象->针对<-进行验证   在休息点服务中调用validate时,后端请求中的会话ID。

在JSP页面中,就像

 third_party_javascript_api_object.setSessionId('<%= session.getId() %>');

在我的角度分量中

export class MyCustomCaptchaComponent implements OnInit {



  constructor(private  service: MyService, private route: ActivatedRoute, private cookieService: CookieService ) { }

  ngOnInit() {
     **third_party_javascript_api_object.setSessionId(sessionIDFromCookie);**
     console.log(document.cookie.split(';'));
     const ca: Array<string> = document.cookie.split(';');
     console.log(ca[0]);
     console.log(this.cookieService.get('JSESSIONID'));

但是由于这些不是在加载此组件时创建的会话,即index.html未设置cookie或会话。

这里的任何帮助都会很棒

0 个答案:

没有答案