Попытка использовать идею из этого учебника: https://spring.io/guides/tutorials/spring-security-and-angular-js/Spring Security + Angularjs перенаправление после Войти
@Override
protected void configure(HttpSecurity http) throws Exception {
http.formLogin().and()
.logout().and().authorizeRequests()
.antMatchers("/index.html", "/main.html", "admin.html",
"/login.html", "/")
.permitAll().anyRequest()
.authenticated().and().csrf().disable();
}
Также я использую angularjs ngRoute:
var myApp = angular.module('myApp',['ngRoute']);
myApp.config(['$routeProvider',
function($routeProvider) {
$routeProvider
.when('/', {
templateUrl: 'main.html',
controller: 'MainController'
})
.when('/admin', {
templateUrl: 'admin.html',
controller: 'AdminController'
})
.when('/login', {
templateUrl: 'login.html',
controller: 'LoginController'
})
.otherwise({
redirectTo: '/'
});
}]);
И так далее.
Но когда я пытаюсь открыть администратор страницы (например/#/администратор) открывает регистрационную форму (из коробки), и после этого я ожидаю, что он должен перенаправить меня обратно в/#/админ, но он перенаправляет мне на /admin.html, который находится вне углового управления.
Как это решить?
Извините, может быть, я чего-то не понимаю, но Spring Boot дает ошибку для этого решения: «Существует уже« метод компонента ErrorController ». И, конечно, у меня нет других методов ErrorController, написанных мной, поэтому это означает, что это бонус безопасности из окна, который управляет сопоставлениями для/error. Правильно ли я понимаю? –
Только что отредактировал мой ответ, я думаю, ваша проблема в угловой конфигурации – jstuartmilne