如何解决是否可以在应用程序的前端远程删除Cookie?
我正在基于其他应用程序提供的API调用从我的应用程序远程注销。 通常,当用户使用我的应用程序注销时,我使用Spring .logout()。deleteCookies()。
现在我们为许多应用程序使用一个授权服务器,我们需要确保从其中一个注销也将注销其他应用程序。
因此,基本思想是授权服务器将调用我的API,例如/ user / logout 当我接到这个电话时,我想要和spring .logout()。deleteCookies()一样的东西。我该如何实现?
是否可以将新的API添加到Spring配置中?说更改此配置:
.logout()
.logoutUrl(logoutUrl)
.invalidateHttpSession(true)
.clearauthentication(true)
.logoutSuccessUrl("/")
.deleteCookies("JSESSIONID")
类似:
.logout()
.logoutUrl(logoutUrl || 'api/user/logout)
.invalidateHttpSession(true)
.clearauthentication(true)
.logoutSuccessUrl("/")
.deleteCookies("JSESSIONID")
?
我整个弹簧的配置是:
http
.addFilterBefore(new RedirectUrlFilter(projectDomainPath),OAuth2LoginAuthenticationFilter.class)
.csrf().disable().cors()
.and()
.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.IF_required)
.and()
.authorizeRequests().antMatchers("/static/**","/logout","/api/user/k_push_not_before","/api/user/k_logout").permitAll()
.anyRequest().authenticated()
.and()
.addFilter(new JwtAuthorizationFilter(authenticationManager(),secret,clientId,"nblues",tokenVerificationUrl))
.logout()
.logoutUrl(logoutUrl)
.logoutRequestMatcher(new AntPathRequestMatcher("/api/user/k_push_not_before"))
.invalidateHttpSession(true)
.clearauthentication(true)
.logoutSuccessHandler(new CustomlogoutSuccessHandler())
.logoutSuccessUrl("/")
.deleteCookies("JSESSIONID")
.and()
.oauth2Login()
.loginPage(DEFAULT_AUTHORIZATION_REQUEST_BASE_URI + "/" + realm);
解决方法
您可以尝试这样的事情
let records = [{
"Name":"Stephen","Age":10,"School":"PSB"
},{
"Name":"Rocky","Age":09,"School":"BSR"
}];
await Post.create(records);
甚至添加.logout().permitAll()
.deleteCookies("JSESSIONID")
.invalidateHttpSession(true)
.clearAuthentication(true)
.logoutUrl("/logout")
.logoutRequestMatcher(new AntPathRequestMatcher("/logout"))
可能看起来像这样
.logoutSuccessHandler(new CustomLogoutSuccessHandler())
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。