if ("POST".equals(method)) {
// ...
}
즉 POST = “데이터 보내기 / 작업 수행 요청”
else if ("GET".equals(method)) {
// ...
}
즉 GET = “데이터 조회 / 보기 전용”
Main (클라이언트) ---POST---> MockPaymentServer (서버)
브라우저 ---GET---> MockPaymentServer (서버, 로그 확인용)
server.createContext("/payment", httpExchange -> {
// 여기서 요청 처리 코드
});
server.createContext("/payment", new HttpHandler() {
@Override
public void handle(HttpExchange httpExchange) throws IOException {
// 요청 처리
}
});
+-----------------------+
클라이언트 | Http Request |
---------> | - Method: POST/GET |
| - Headers |
| - Body(InputStream) |
+-----------------------+
│
▼
+------------------------+
| HttpExchange 객체 |
|------------------------|
| getRequestMethod() | <-- 요청 메서드
| getRequestHeaders() | <-- 헤더
| getRequestBody() | <-- 바디
| getResponseHeaders() | <-- 응답 헤더
| getResponseBody() | <-- 응답 바디
| sendResponseHeaders() | <-- 상태코드 설정
+------------------------+
│
▼
서버 응답(Http Response)
<-----------------------
[Main.java] POST(JSON)
│
▼
[MockPaymentServer.java / httpExchange] <-- exchange가 모든 정보 담음
│ - POST인지 GET인지 확인
│ - 요청 바디 읽고 로그 저장
│ - 응답 JSON 생성 후 client에게 반환
▼
[Main.java] 응답 JSON 수신
브라우저가 URL 열면:
[Browser] GET
│
▼
[MockPaymentServer.java / httpExchange]
│ - GET인지 확인
│ - requestLogs HTML로 변환
▼
[Browser] HTML 로그 확인

| Base64 인코딩, 디코딩, AES-GCM 모드란? (예제 코드포함) (0) | 2025.11.18 |
|---|---|
| 로컬PC에서 logback.xml 파일 직접 생성해서 설정해보기 (0) | 2025.11.06 |
| Intellij 인텔리제이 공부하기 - pom.xml 파일 역할, 사용 방법 (0) | 2025.11.06 |
| APP api 연동방식에서 STM방식, App방식 각각 개념과 차이점은? (0) | 2025.11.05 |
| PUID란? (5) | 2025.08.16 |