postman에서 post로 보냈는데 get으로 바뀌는 문제

solarrrrr·2023년 11월 22일
0

Today I Learned

목록 보기
71/74

하루 종일 삽질했다.
포스트맨으로 ec2에 배포한 백엔드 엔드포인트 호출 테스트를 해 보는데
GET 요청은 정상 동작을 하지만 그외 메소드는 (PUT, PATCH, POST 등등)
405 오류를 뿜었다.

결론부터 말하자면 포스트맨 세팅에서 특정 항목을 'ON'으로 변경하면 되었다.
이 블로그 참고: (https://solbel.tistory.com/2699)

Follow original HTTP Method 부분을 ON으로 변경하면 된다.

어떤 문제인가 찾다가 도커 로그를 보니 호출 모두가 GET으로 들어오고 있었다.
검색 해 보면 301 리다이렉션의 경우 GET으로만 동작하니까 308로 해야 한다는 글도 있고
포스트맨은 308도 GET으로 변경한다는 말도 있고 그랬다.

플라스크 라우터쪽 메소드 작성은 제대로 돼 있기 때문에
nginx 설정쪽 문제 같아서
headers-more-nginx-module 모듈 설치해서 적용도 시켜보고,
override 설정도 넣어보고,
rewrite ^/api(/.*)$ $1 break;를 넣어야 뒤에 오는 url을 그대로 사용할 수 있다 하여
이것도 써 보고,
error_page 405 =200 $uri; 이걸 넣으면 된다고 했지만
이 모든 걸 다 해 봐도 405는 해결되지 않았는데 결국 포스트맨 설정 문제였다니..

그래도 해결돼서 다행이다.

profile
몰입

0개의 댓글