작성
·
314
0
안녕하세요, 강사님.
타임리프를 이용하지 않고, React 로 화면을 구성 후
구글, 카카오, 네이버, 깃허브 등 소셜 로그인을 구현하려고 합니다.
버튼 클릭 -> 소셜 로그인 창 팝업
간단한 로직이 안되어 질문을 남깁니다 ㅜ.ㅜ
강의에서는
<a th:href="@{/oauth2/authorization/google, kakao, naver}"> </a>
위 코드로 진행이 잘 되었는데
해당 url 을 프론트에서 맵핑 시키기 위해서는 어떤 url 을 사용해야 하나요?
@{/oauth2/authorization/google}
위 url 이 어디에 맵핑이 되는건지 알고싶습니다.
(강의 잘 듣고있고, 뒤쪽 resource server 까지 달려가고 있습니다!)
답변 1
1
네
기본적으로 아래 굵은 문장 보시면 스프링 시큐리티에서 설정이 되어 있습니다.
public class OAuth2AuthorizationRequestRedirectFilter extends OncePerRequestFilter {
/**
The default base {@code URI} used for authorization requests.
/
public static final String DEFAULT_AUTHORIZATION_REQUEST_BASE_URI = "/oauth2/authorization";
private final ThrowableAnalyzer throwableAnalyzer = new DefaultThrowableAnalyzer();
private final RedirectStrategy authorizationRedirectStrategy = new DefaultRedirectStrategy();
.. 이하 생략...
}
즉 /oauth2/authorization/{registrationId} 로 호출하게 되면 OAuth2AuthorizationRequestRedirectFilter 가 요청을 받아 처리하게 됩니다.
그래서
<a th:href="@{/oauth2/authorization/google}"> </a> 로 하시면 될 것 같은데요..