我正在对Springboot控制器进行Rest调用,并且具有访问特定URL所需的授权和角色的安全配置。
http.authorizeRequests()
.antMatchers("/api/admin/**").access("hasRole('Admin')") //
.antMatchers("/api/user/**").hasAnyRole("Admin","User")
//.antMatchers("/api/user/**").access("hasRole('User')")
//.and().logout()
.and().formLogin()
.loginPage("/login").usernameParameter("userName").passwordParameter("password")
现在的问题是,当我从Spring控制器端注销时(比如应用程序重新启动或超时等(,当User得到这个调用时,它会返回整个登录页面UI。我希望Spring给我返回一些状态代码和一些消息,告诉我会话超时,或者我可以让用户调用登出的东西。
所以我能够以传统的方式对事物进行排序,因为Spring没有给我任何特定的状态代码,在这种情况下只有200。
我在我的AngularJS控制器代码中做了一个例子检查,如下所示-
if(response.data instanceof Object){
self.list = response.data;
}
else{
logout();
}
这解决了我的案子。如果有更好的方法,请评论。