diff --git a/roome/src/main/java/com/roome/domain/payment/service/PaymentService.java b/roome/src/main/java/com/roome/domain/payment/service/PaymentService.java index 0ae25c0e..27014492 100644 --- a/roome/src/main/java/com/roome/domain/payment/service/PaymentService.java +++ b/roome/src/main/java/com/roome/domain/payment/service/PaymentService.java @@ -143,12 +143,11 @@ public PaymentResponseDto verifyPayment(Long userId, PaymentVerifyDto verifyDto) LocalDateTime approvedAt; try { ResponseEntity response = tossPaymentClient.requestConfirm(verifyDto); - log.info("✅ Step 6: Toss API 응답 수신 - Status={}, Body={}", - response.getStatusCode(), response.getBody()); + // 응답 전문에는 카드 및 구매자 정보가 포함될 수 있어 body를 로깅 x + log.info("✅ Step 6: Toss API 응답 수신 - Status={}", response.getStatusCode()); if (!response.getStatusCode().is2xxSuccessful()) { - log.error("❌ Step 7: 결제 승인 실패 - Status={}, Response={}", - response.getStatusCode(), response.getBody()); + log.error("❌ Step 7: 결제 승인 실패 - Status={}", response.getStatusCode()); throw new BusinessException(ErrorCode.PAYMENT_VERIFICATION_FAILED); } diff --git a/roome/src/main/java/com/roome/domain/payment/service/TossPaymentClient.java b/roome/src/main/java/com/roome/domain/payment/service/TossPaymentClient.java index cc8f4245..4370197b 100644 --- a/roome/src/main/java/com/roome/domain/payment/service/TossPaymentClient.java +++ b/roome/src/main/java/com/roome/domain/payment/service/TossPaymentClient.java @@ -56,10 +56,6 @@ public ResponseEntity requestConfirm(PaymentVerifyDto verifyDto) { headers.setContentType(MediaType.APPLICATION_JSON); headers.set("Authorization", encodeSecretKey()); - log.info("Toss API 요청 URL: {}", requestUrl); - log.info("Toss API 요청 Headers: {}", headers); - log.info("Toss API 요청 Body: {}", requestBody); - HttpEntity> requestEntity = new HttpEntity<>(requestBody, headers); try { @@ -181,10 +177,8 @@ public static LocalDateTime parseTossDateTime(String isoDateTime) { } } - // Secret Key를 Base64 인코딩하여 반환 + // Secret Key를 Base64 인코딩하여 반환 (시크릿키는 절대 로깅 x) private String encodeSecretKey() { - log.info("현재 사용 중인 Toss Secret Key: {}", secretKey); - if (secretKey == null || secretKey.isEmpty()) { throw new RuntimeException("Toss Secret Key가 설정되지 않았습니다."); } diff --git a/roome/src/main/java/com/roome/domain/payment/service/TossPaymentService.java b/roome/src/main/java/com/roome/domain/payment/service/TossPaymentService.java deleted file mode 100644 index 5cc1c2d8..00000000 --- a/roome/src/main/java/com/roome/domain/payment/service/TossPaymentService.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.roome.domain.payment.service; - -import org.springframework.http.*; -import org.springframework.web.client.RestTemplate; -import java.util.Base64; -import java.util.Map; - -public class TossPaymentService { - private static final String BASE_URL = "https://api.tosspayments.com/v1/payments"; - private static final String SECRET_KEY = "test_sk_vZnjEJeQVxGkg7xlkaAO3PmOoBN0"; // 운영 환경에서는 live_sk_YOUR_LIVE_KEY - - public Map requestPayment(String orderId, int amount) { - RestTemplate restTemplate = new RestTemplate(); - - // 요청 데이터 설정 - Map request = Map.of( - "amount", amount, - "orderId", orderId, - "orderName", "테스트 결제", - "successUrl", "http://localhost:8080/api/payments/verify", // 백엔드 검증 API - "failUrl", "http://localhost:8080/api/payments/fail/" + orderId // 결제 실패 처리 API - ); - - // 인증 정보 (Basic Auth) - String authHeader = "Basic " + Base64.getEncoder().encodeToString((SECRET_KEY + ":").getBytes()); - - HttpHeaders headers = new HttpHeaders(); - headers.setContentType(MediaType.APPLICATION_JSON); - headers.set("Authorization", authHeader); - - HttpEntity> entity = new HttpEntity<>(request, headers); - - ResponseEntity response = restTemplate.exchange(BASE_URL, HttpMethod.POST, entity, Map.class); - - return response.getBody(); - } -}