Skip to content

Commit 5504451

Browse files
authored
Merge pull request #77 from ConnectCo/fix/coupon
fix: 구글 로그인 방식 수정
2 parents 0544fd8 + db7d8a6 commit 5504451

File tree

3 files changed

+10
-23
lines changed

3 files changed

+10
-23
lines changed

build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ dependencies {
4444
implementation 'io.jsonwebtoken:jjwt-api:0.11.5'
4545
implementation 'io.jsonwebtoken:jjwt-impl:0.11.5'
4646
implementation 'io.jsonwebtoken:jjwt-jackson:0.11.5'
47+
implementation 'com.auth0:java-jwt:4.4.0'
4748

4849
// WebClient
4950
implementation 'org.springframework.boot:spring-boot-starter-webflux'
Lines changed: 8 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,18 @@
11
package com.connectCo.domain.member.client;
22

3-
import com.connectCo.domain.member.dto.client.GoogleMemberResponse;
4-
import com.connectCo.global.exception.CustomApiException;
5-
import com.connectCo.global.exception.ErrorCode;
3+
import com.auth0.jwt.JWT;
4+
import com.auth0.jwt.interfaces.DecodedJWT;
65
import org.springframework.stereotype.Component;
7-
import org.springframework.web.reactive.function.client.WebClient;
86

97
@Component
108
public class GoogleMemberClient {
11-
private final WebClient webClient;
129

13-
public GoogleMemberClient(WebClient.Builder webClientBuilder) {
14-
this.webClient = webClientBuilder
15-
.baseUrl("https://www.googleapis.com/oauth2/v3/userinfo")
16-
.build();
17-
}
18-
19-
public String getGoogleUserId(String accessToken) {
20-
GoogleMemberResponse response = webClient
21-
.get()
22-
.header("Authorization", "Bearer " + accessToken)
23-
.retrieve()
24-
.bodyToMono(GoogleMemberResponse.class)
25-
.block();
26-
if(response != null) {
27-
return response.getSub();
10+
public String getGoogleUserId(String idToken) {
11+
try {
12+
DecodedJWT decodedJWT = JWT.decode(idToken);
13+
return decodedJWT.getClaim("sub").asString(); // 사용자 고유 ID 반환
14+
} catch (Exception e) {
15+
throw new RuntimeException("Invalid Google ID Token", e);
2816
}
29-
throw new CustomApiException(ErrorCode.INVALID_GOOGLE_TOKEN);
3017
}
3118
}

src/main/java/com/connectCo/domain/member/service/AuthServiceImpl.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,7 @@ public class AuthServiceImpl implements AuthService{
4343
@Override
4444
@Transactional
4545
public AuthTokenResponse login(String accessToken, LoginType provider) {
46-
String clientId = UUID.randomUUID().toString();
47-
// String clientId = getClientIdByProvider(accessToken, provider);
46+
String clientId = getClientIdByProvider(accessToken, provider);
4847
Optional<Member> member = memberRepository.findByClientIdAndLoginType(clientId, provider);
4948

5049
if (member.isPresent()) {

0 commit comments

Comments
 (0)