如何重定向与应用程序中url上的任何错误文本都不匹配的主页

时间:2018-10-17 11:21:06

标签: java spring-boot spring-security

我是Java的新手,我已经开发了具有Spring Boot和Spring Security的应用程序。应用程序工作正常,但我面临一些漏洞问题。

即,登录页面从http://localhost:8080/loginhttp://localhost:8080/home页面之后,但是当我尝试将URL中的文本从http://localhost:8080/homehttp://localhost:8080/sdghgdj时,它抛出了{{1} },但我想重定向到Whitelabel Error Page页,因为会话已激活。

我的代码有什么问题

home

1 个答案:

答案 0 :(得分:0)

.1。 Spring Boot-重定向,例如将路径/foo重定向到/home

@SpringBootApplication(exclude = {ErrorMvcAutoConfiguration.class})
public class DemoApplication implements WebMvcConfigurer {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }

    @Override
    public void addViewControllers(ViewControllerRegistry registry) {
        registry.addRedirectViewController("/notFound", "/home");
    }


    @Bean
    public WebServerFactoryCustomizer<ConfigurableServletWebServerFactory> containerCustomizer() {
        return container -> container.addErrorPages(new ErrorPage("/notFound"));
    }

    @RestController
    public static class MyController {

        @GetMapping("/home")
        public String home() {
            return "Hello World";
        }

    }

}

enter image description here

.2。 Spring Boot-没有重定向,例如,路径/foo将相同,但是将被称为@GetMapping("/home")

@SpringBootApplication(exclude = {ErrorMvcAutoConfiguration.class})
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }

    @Bean
    public WebServerFactoryCustomizer<ConfigurableServletWebServerFactory> containerCustomizer() {
        return container -> container.addErrorPages(new ErrorPage("/home"));
    }

    @RestController
    public static class MyController {

        @GetMapping("/home")
        public String home() {
            return "Hello World";
        }

    }

}

enter image description here