spring boot + spring security + angularjs,自定义登录页面未显示(404错误)

时间:2017-06-28 10:22:04

标签: angularjs spring-boot spring-security

我有一个Spring安全应用程序,弹簧安全性和Angularjs作为前端。 当我在weblogic服务器中部署应用程序时,它应该使用url'/ login'打开在angularjs路由中配置的自定义登录页面(login.html),登录的安全文件中给出的url是loginPage(“/ login”)

但是它显示404错误,形成的网址是http://localhost:7001/demo/login,这是正确的。

下面是安全配置

     http
     .authorizeRequests()
            .antMatchers("/").permitAll()
            .anyRequest().authenticated()
            .and()
        .formLogin()
            .loginPage("/login")

           .loginProcessingUrl("/authenticate")
           .failureHandler(new MyAuthenticationFailureHandler())
           .usernameParameter("username")
           .passwordParameter("password")
           .permitAll()
            .and()
        .logout()
            .logoutSuccessUrl("/logout")
            .logoutUrl("/logout")

            .permitAll()
            .and()
        .csrf()
        .csrfTokenRepository(csrfTokenRepository())
        .and()
        .addFilterAfter(new CSRFFilterBean(), CsrfFilter.class);

以下是angularjs路线配置

$stateProvider
        .state("login",{
            url:'/login',
            templateUrl:'http://localhost:7001/demo/login.html', --- custom login form
            controller:'http://localhost:7001/demo/src/ContactLogin/controllers/ContactLoginCtrl.js'
        })

还添加了将resource / template文件夹包含到类路径中的条目

private static final String[] CLASSPATH_RESOURCE_LOCATIONS = {
        "classpath:/META-INF/resources/", "classpath:/templates/",
        "classpath:/static/","classpath:/static/js/","classpath:/static/js/lib/", "classpath:/public/", 
        "classpath:/static/js/src/"

} 

下面是src / main / resources下静态文件位置的屏幕截图 enter image description here

如果我从应用程序中删除上面显示的完整安全配置,我可以使用网址http://localhost:7001/demo/login.html访问该文件 网址http://localhost:7001/demo/login显示为404错误

请一些人帮我这个..?

在spring安全文件中配置了loginpage(“/ login”),它会重定向到url http://localhost:7001/demo/login,现在基于baseApp中配置的url路由,它应该显示login.html。在我的情况下,它给出404错误 请一些身体帮助我.....

0 个答案:

没有答案