HTTPS 리다이렉션을 301번 http status code로 지정을 했다가
스프링부트 작업 후 서버에 파일들을 올려서 Postman
으로 작업을 하던 도중 문제가 발생하였다.
로컬 환경에서 게시물 수정 관련 API를 실행했을 때는
위와 같이 API가 성공적으로 수행된 것을 볼 수 있다.
그러나, 서버에 똑같은 파일을 업로드하여 postman에서 테스트해 본 결과
다음과 같이 GET
요청으로 바뀌어 실행된 것이 보인다.
다른 게시물에 작성한 적 있지만, 308
번으로 리다이렉션 코드를 바꿈으로써 해결하였다. 그때는 막연하게 301
번은 GET으로 요청을 바꾸고, 308
번은 HTTP Method를 보장하는구나라고 생각을 했지만 밑과 같은 그림을 본 후 한 번에 차이들이 이해가 갔다.
위의 그림처럼 300번 대 HTTP Status code는 크게 301vs 302, 301 vs 308, 302 vs 307로 나뉨을 볼 수 있다.
301, 302와 307, 308이 갈라지는 분기 : HTTP Method
를 GET
으로 변경 여부 (HTTP Method 유지 여부)
301과 302의 분기 (= 307과 308의 분기) : 일시적으로 이동하는지 여부