2017-02-13 2 views
0

봄 요청 언어로 요청 URL을 얻으려면 어떻게해야합니까?요청 URL을 봄 표현 언어로 어떻게 얻을 수 있습니까?

.antMatchers("https://stackoverflow.com/users/location/**").access("principal.locations.contains('locationIdFromUrl')") 

내 표현이 작동하지만 난/위치 후 URL 변수를 얻을 방법을 모른다 :

이 봄 보안 구성에서 코드의 내 작품이다. 이 변수를 contains 메소드에 전달하려면이 변수가 필요합니다.

답변

1

구성 클래스에서 URL 매개 변수에 액세스 할 수 없으므로 필터를 사용하여 논리적으로이 작업을 수행 할 수 있습니다.

의사 코드 LocationAccessFilter 위치 액세스의 로직을 포함

.addFilterBefore(new DeviceResolverRequestFilter(), LocationAccessFilter.class) 

.

0

좋아요, 제 소견을 해결합니다.

antMatchers("https://stackoverflow.com/users/location/{id}/**").access("principal.locations.contains(#id)")