33import com .Timo .Timo .global .auth .dto .CustomUserDetails ;
44import com .Timo .Timo .global .auth .service .RefreshTokenService ;
55import com .Timo .Timo .global .jwt .provider .JwtTokenProvider ;
6+ import com .fasterxml .jackson .databind .ObjectMapper ;
67import jakarta .servlet .http .HttpServletRequest ;
78import jakarta .servlet .http .HttpServletResponse ;
89import java .io .IOException ;
910import java .time .Duration ;
11+ import java .util .Map ;
1012import lombok .RequiredArgsConstructor ;
1113import org .springframework .beans .factory .annotation .Value ;
12- import org .springframework .http .HttpHeaders ;
14+ import org .springframework .http .MediaType ;
1315import org .springframework .http .ResponseCookie ;
1416import org .springframework .security .core .Authentication ;
1517import org .springframework .security .web .authentication .SimpleUrlAuthenticationSuccessHandler ;
@@ -21,6 +23,7 @@ public class OAuthSuccessHandler extends SimpleUrlAuthenticationSuccessHandler {
2123
2224 private final JwtTokenProvider jwtTokenProvider ;
2325 private final RefreshTokenService refreshTokenService ;
26+ private final ObjectMapper objectMapper ;
2427
2528 @ Value ("${app.oauth2.redirect-uri}" )
2629 private String redirectUri ;
@@ -43,24 +46,18 @@ public void onAuthenticationSuccess(
4346
4447 refreshTokenService .save (email , refreshToken );
4548
46- ResponseCookie accessCookie = ResponseCookie .from ("accessToken" , accessToken )
47- .httpOnly (true )
48- .secure (cookieSecure )
49- .path ("/" )
50- .maxAge (Duration .ofSeconds (jwtTokenProvider .getAccessTokenExpiry ()))
51- .sameSite ("Strict" )
52- .build ();
53- response .addHeader (HttpHeaders .SET_COOKIE , accessCookie .toString ());
54-
5549 ResponseCookie refreshCookie = ResponseCookie .from ("refreshToken" , refreshToken )
5650 .httpOnly (true )
5751 .secure (cookieSecure )
5852 .path ("/" )
5953 .maxAge (Duration .ofSeconds (jwtTokenProvider .getRefreshTokenExpiry ()))
6054 .sameSite ("Strict" )
6155 .build ();
62- response .addHeader (HttpHeaders .SET_COOKIE , refreshCookie .toString ());
6356
64- getRedirectStrategy ().sendRedirect (request , response , redirectUri );
57+ response .setContentType (MediaType .APPLICATION_JSON_VALUE );
58+ response .setCharacterEncoding ("UTF-8" );
59+ response .getWriter ().write (
60+ objectMapper .writeValueAsString (Map .of ("accessToken" , accessToken ))
61+ );
6562 }
6663}
0 commit comments