✅ 카카오페이가 나의 local 서버(로컬호스트)에 직접 접근할 수 없기 때문
카카오페이의 결제 흐름
- 사용자가 결제하기 클릭
- 카카오페이 페이지로 이동
- 결제 성공/실패 후 카카오페이가 나의 서버로 다시 요청을 보냄
- approval_url
- cancel_url
- fail_url
즉, 카카오페이가 나의 서버로 들어와서 승인 처리를 해야 함
그런데 문제는 내 backend 서버는 로컬에서 돌아가는 Tomcat 서버
http://localhost:8080/payMent/...
카카오페이 서버는 인터넷에 있고
로컬컴퓨터는 외부에서 접근 불가능
즉, 카카오페이가 localhost:8080으로 접근할 방법이 없음.
그래서 필요한 게 ngrok!
ngrok는 나의 로컬 서버를 인터넷에서 접근 가능하도록 공개 URL로 만들어주는 도구.
예: https://어쩌고저쩌고.ngrok-free.dev → 내 로컬 서버
이 URL을 카카오페이에 등록하게 되면
카카오페이는 결제 성공 시 ➡ approval_url
로 요청을 보낼 수 있게 됨.
ngrok이 하는 일
- 로컬 Tomcat ↔ 카카오페이 서버 사이에서 다리 역할
- 로컬에서 돌아가는 프로젝트에 외부 서버가 접속할 수 있도록 해줌
- 카카오페이 redirect_url(승인/취소/실패) 호출을 가능하게 함
정리
🔸 나의 payMent 프로젝트는 로컬에서 동작
🔸 카카오페이는 인터넷에서 동작
🔸 그래서 서로 통신하려면 ngrok가 필요함
🔸 ngrok가 로컬을 인터넷 URL로 변환해줌
➡ ngrok 없으면 카카오페이가 approve URL로 절대 접근할 수 없음!
'JSP' 카테고리의 다른 글
| 카카오 결제 API를 활용한 프로젝트의 전체 흐름 정리해보기 (0) | 2025.12.05 |
|---|---|
| 카카오톡 결제 API를 사용하여 작은 결제 프로젝트 만들어보기 - 2 (0) | 2025.12.03 |
| 카카오톡 결제 API를 사용하여 작은 결제 프로젝트 만들어보기 - 1 (0) | 2025.12.03 |
| a태그와 JSP 내장객체 pageContext (0) | 2025.12.02 |
| Servlet vs Action의 역할 (0) | 2025.12.02 |