반응형
request를 가지고 redirectUrl 을 생성하는 부분이 애매하기도 하고 해서
spring에서 사용하고 있는 소스를 기록차 남김
HttpServletRequest 를 가지고 redirectUrl 을 생성한다.
String url = "https://foo.bar.com/this/is/test?param1=value1¶m2=value2";
doReturn("https").when(request).getScheme();
doReturn("foo.bar.com").when(request).getServerName();
doReturn(443).when(request).getServerPort();
doReturn("/this/is/test").when(request).getRequestURI();
doReturn("param1=value1¶m2=value2").when(request).getQueryString();
UriComponentsBuilder builder = ServletUriComponentsBuilder.fromRequest(request);
assertThat(builder.toUriString(), equalTo(url));
assertThat(builder.replaceQuery("").toUriString(), equalTo("https://foo.bar.com/this/is/test"));
assertThat(builder.replacePath("").toUriString(), equalTo("https://foo.bar.com"));
//spring logout redirect
UriComponentsBuilder builder = ServletUriComponentsBuilder.fromRequest(request);
https://a.com/user/logout?spring-security-redirect=builder.toUriString()
반응형
'java' 카테고리의 다른 글
비밀키(개인키)를 이용한 디지털 서명 javascript and java (0) | 2023.02.09 |
---|---|
gradle project 경로 확인 (0) | 2022.11.23 |
gradle dependency 캐시 지우기 (0) | 2022.08.02 |
스프링부터 tomcat connector 커스터마이징 (0) | 2022.05.03 |
springboot common properties (0) | 2022.05.03 |