java - 成功登录后我无法重定向到主页
问题描述
当我在那之后登录时,我应该重定向到主页。据我了解,我重定向到 /login
POST request。并看到空白页。我如何解决它?
我试图编写这个函数,但没有任何反应。
.successForwardUrl("/")
.loginProcessingUrl("/")
.defaultSuccessUrl("/")
我为成功登录创建处理程序
安全配置
override fun configure(http: HttpSecurity) {
http.csrf().disable()
.authorizeRequests()
.antMatchers("/",
"/css/**",
"/img/**",
"/js/**",
"/signup/**").permitAll()
.anyRequest().authenticated()
.antMatchers("/admin/**").hasAnyRole(UserRole.ADMIN.name)
.and()
.formLogin()
.successHandler(SuccessLoginHandler())
.loginPage("/login")
.permitAll()
.and()
.logout()
.logoutUrl("/logout")
.permitAll()
http.addFilter(JWTAuthenticationFilter(authenticationManager(), jwtUtil = jwtUtil))
http.addFilter(JWTAuthorizationFilter(authenticationManager(), jwtUtil = jwtUtil, userDetailService = adminDetailsServiceImpl))
http.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS)
}
SuccessLoginHandler
@Component
class SuccessLoginHandler : AuthenticationSuccessHandler {
private val redirectStrategy: RedirectStrategy = DefaultRedirectStrategy()
override fun onAuthenticationSuccess(request: HttpServletRequest, response: HttpServletResponse, auth: Authentication?) {
try {
redirectStrategy.sendRedirect(request, response, "/")
} catch (ex: IOException) {
err.println(ex)
throw RuntimeException()
}
}
}
控制器
@GetMapping("/")
fun index(mode: Model): String{
return "index"
}
@PostMapping("/signup")
@ResponseStatus(code = HttpStatus.CREATED)
fun signUp(@RequestBody admin: AdminDTO): AdminDTO {
admin.userRole = UserRole.ADMIN
return adminService.create(admin)
}
@GetMapping("/login")
fun login(): String {
return "login"
}
解决方案
我认为您应该同时允许“GET”和“POST”/
访问您的 url,因此快速解决方法是@GetMapping
将@RequestMapping
@RequestMapping("/")
fun index(mode: Model): String{
return "index"
}
推荐阅读
- angular - 如何在角度类型js中隐藏图表linechartoption
- python - SQLAlchemy 迁移表已经存在
- r - R - 在包装器内将参数传递给`dplyr::select()`
- linux - sed 命令 grep 特定值
- database - 同一微服务的多个实例时数据库连接池如何工作
- mysql - 设置表关系
- wordpress - 使用 HTACCESS 进行重定向,包括 GET 参数
- python - python:提取列值大于3的行
- cordova - Phonegap-plugin-barcodescanner 在 ios 13 上不起作用
- c# - 如何序列化列表
pp到XML?