, . /logout, Angular2 - , CORS Access-Control-Allow-Origin /logout. , /logout , CORS , . , . , , :
- LogoutHandler ()
- LogoutSuccessHandler onLogoutSuccess()
- Spring
, LogoutSuccessHandler, LogoutHandler. LogoutSuccessHandler ( ) - , . LogoutHandler . Spring -boot REST, Groovy ( java)
@Slf4j
class TodosLogoutHandler implements LogoutHandler {
@Override
void logout(
HttpServletRequest request,
HttpServletResponse response,
Authentication authentication) {
response.setHeader("Access-Control-Allow-Origin", "*")
log.info("TodosLogoutHandler logging you out of the back-end app.")
}
}
, WebSecurityConfigurerAdapter, . , , configure().
@Override
public void configure(HttpSecurity http) throws Exception {
http.authorizeRequests()
.antMatchers(HttpMethod.OPTIONS, "/**").permitAll()
.antMatchers(HttpMethod.GET, "/priority", "/status").permitAll()
.anyRequest().authenticated()
.and()
.csrf().disable()
.httpBasic().realmName("Spring REST Todos")
.and()
.logout()
.logoutUrl("/logout")
.logoutSuccessHandler(new TodosLogoutSuccessHandler())
.addLogoutHandler(new TodosLogoutHandler())
.invalidateHttpSession(true)
}