Postman에서 HTTPS통신 서버로 80 포트로 요청 시 본문 데이터 유실 문제

song yuheon·2023년 10월 6일
0

Trouble Shooting

목록 보기
24/57
post-thumbnail
post-custom-banner

문제 상황
Postman에서 80 포트를 통해 API 요청을 보낼 때 로드 밸런서에 의해 443 포트로 바꿔서 통신이 되야하지만 아래처럼 본문이 비었다는 예외 발생한다.
com.fasterxml.jackson.databind.exc.MismatchedInputException 예외

  • 이 예외는 본문 데이터가 없거나 잘못된 JSON 형식으로 제공될 때 발생한다.
  1. 문제 파악
    • postman 설정을 확인해 보니 자동 리디렉션은 활성화 되어 있지만 본문 내용을 유지하는 설정은 비활성화 되어있음
      자동으로 리디렉션 되지만 기존 본문을 유지하지 않고 새로운 비어있는 본문으로 전송하기에 문제가 발생한걸로 유추된다.
  1. 초기 검증

    • 브라우저에서는 80 포트 접근 시 정상적으로 443 포트로 리디렉션되어 문제가 없음을 확인.
    • Postman에서만 문제가 발생함을 파악.
  1. Postman 설정 확인
    • 우선 서버에서 정상적으로 301 리디렉션을 주는지 자동 리디렉션을 비활성화 해서 확인한다.
      • Postman의 Automatically follow redirects 옵션 확인
        리디렉션을 자동으로 따르는 설정이 활성화 되어 있었다.
    • 이 설정을 비활성화하여 리디렉션 응답을 직접 확인
      • Postman에서 HTTP(80 포트)로 요청을 보낼 때 301 리디렉션 응답을 받음.
  1. 리디렉션 과정에서의 데이터 유실 문제 파악

    • Postman에서 Automatically follow redirects가 활성화된 상태에서 리디렉션 대상 URL로 본문 데이터 없이 요청이 재전송되는 것을 확인하였다.
  2. 문제해결

    • Postman의 Follow original HTTP Method 옵션 활성화
      리디렉션 과정에서 원래의 HTTP 메서드와 본문 데이터를 유지한다.
profile
backend_Devloper
post-custom-banner

0개의 댓글