15 Replies
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) :
- 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요.
* 주말/공휴일에는 답변이 늦을 수 있어요.
저희는 utf-8로 전달드리고 있습니다.
서버 설정 확인해보시겠어요
다른 한글은 잘 나오는 것으로 봐서는 서버의 문제는 아닌 것 같습니다,. 토스에서 전달해주는 값만 한글이 깨지고 있거든요
주문번호 text로 남겨주시겠어요?
참고로 orderName은 가맹점에서 전달해주는 값입니다.
ZVPC0PQYP3 입니다
front쪽 설정도 한번 확인바랍니다. 전달해주실 때부터 잘못들어왓을 수 있어서요
우선 어떻게 들어왔는지 로그한번 확인해보렉요
method 드 값은 토스에서 넘겨주는 값인데 그것도 한글이 깨집니다
우선 요청도 정상적으로 들어왔고, 응답도 정상적으로 나갔습니다.
로그상으로는 이상없으며
만약 저희 시스템 문제로 한글이 깨져서 나갔을 경우, 큰일이 발생하는 상황이라 귀사에 확인 요청드리는 점 양해바랍니다.
아래 @culjang_49942 님이 문의주신 것과 같은 회사이신가요?
UTF-8 으로 보내드리므로 해당 인코딩에 맞춰주시면 됩니다.
해결했습니다, RestTemplate 이용 시 UTF-8 로 다시 한 번 인코딩을 해주니 잘 되네요 감사합니다
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.
결제 승인 요청시 UTF-8로 응답 된 것인지 의심은 이렇습니다.
기존에 사용하고 있는 resttemplate이거나, httpclient 여서 한글이 안깨지고 잘 사용하고 있던건데 갑자기 한글이 깨지는 응답을 받게 됩니다.
기존에도 utf-8응답을 받고 있고 안깨지던게 갑자기?
일단깨지니까 encoding을 아래와 같이 해야하는 것이 추가됩니다.
HttpEntity entity = response.getEntity();
//String content = EntityUtils.toString(entity);
String content = EntityUtils.toString(entity,"UTF-8");
아래 답변을 잘해 주셨네요. java 실행환경 Locale/인코딩을 UTF-8로 하시거나 명시적으로 위와 같이 하시거나 선택하는 게 정신건강에 좋겠습니다.
질문 주신건가요?
지금 사용중이신 코드를 보니 시스템 locale을 타는 코드였던 것 같습니다.
한국어로 설치된 OS(대개 Windows에서 발생)에서는 Java의 인코딩이 MS949(EUC-KR), 영어로 설치된 OS(Linux도 포함)에서는 Java의 인코딩이 서유럽어로 기본설정되는 문제가 간혹 있습니다.
Java 실행환경 Locale/인코딩을 UTF-8로 하시거나 지금 수정하신것처럼 UTF-8이라고 명시적으로 지정해 주심이 좋을거 같습니다.
@Ayaan @이실장 답변 감사합니다~! 글쓰다가 짤렸었습니다! ;;😅