인프런 커뮤니티 질문&답변

dbcksrla님의 프로필 이미지
dbcksrla

작성한 질문수

Next.js 풀스택 Github Issue 서비스 만들기

[sucode] 38. 이슈 삭제 API 오류 처리

이슈 삭제 API delete 요청 오류 반환

해결된 질문

작성

·

511

2

이슈 삭제 API를 생성했는데 axios로 delete 요청을 하면 405 에러가 반환이 됩니다.

일단 post 요청으로 api를 만들고 요청을 보내면 정상적으로 삭제가 되는데 추가적인 설정이 필요할까여

답변 1

1

Su님의 프로필 이미지
Su
지식공유자

안녕하세요 dbcksrlas님! 질문 주셔서 감사합니다. 우선 해당 405 Method Not Allowed 오류는 서버가 요청받은 메소드를 인식하지만 지원하지 않을 때 발생합니다. Next.js에서 API 라우트를 사용하여 DELETE 요청을 처리하려고 할 때 이 오류가 발생할 수 있는데, 이는 보통 API 라우트에서 해당 HTTP 메소드를 명시적으로 처리하지 않았기 때문입니다.

아래 공식 문서에서 소개하듯이 Next.js는 GET, POST, PUT, PATCH, DELETE, HEAD, 그리고 OPTIONS와 같은 여러 HTTP 메소드를 지원합니다. 만약 지원하지 않는 메소드로 요청이 들어올 경우, Next.js는 405 Method Not Allowed 응답을 반환합니다.

이 정보를 바탕으로, DELETE 요청에 대해 405 Method Not Allowed 오류가 발생하는 경우는 다음과 같은 이유일 수 있습니다:

1. 라우트 핸들러에서 DELETE 메소드 처리 누락: 요청을 받는 API 라우트 핸들러에서 DELETE 메소드를 명시적으로 처리하는 로직이 없거나 잘못 구현되었을 수 있습니다. 따라서, 라우트 핸들러 내에서 모든 지원되는 메소드에 대해 적절한 처리가 이루어지고 있는지 확인해야 합니다.

2. 오타 또는 구성 오류: 때때로 단순한 오타나 구성 오류로 인해 예상치 못한 동작이 발생할 수 있습니다. 예를 들어, 파일 이름, 경로, 또는 메소드 이름에서의 오타는 DELETE 요청이 올바르게 처리되지 않게 할 수 있습니다.

3. 중간 미들웨어 또는 프록시 서버의 영향: 네트워크 경로상에 있는 미들웨어나 프록시 서버가 특정 HTTP 메소드를 차단하거나 수정할 수 있습니다. 이런 경우, 해당 네트워크 구성 요소의 설정을 확인해야 할 수 있습니다.

4. 개발 환경 또는 배포 환경의 차이: 로컬 개발 환경에서는 문제가 발생하지 않지만, 배포된 환경에서만 405 Method Not Allowed 오류가 발생하는 경우, 환경 간의 설정 차이(예: 보안 정책, 네트워크 구성 등)를 확인해야 할 수 있습니다.

이러한 가능성들을 검토하시고, 문제를 해결하기 위해 필요한 조치를 취해보시기 바랍니다. 문제가 지속되면, 구체적인 코드 예시와 함께 추가적인 질문을 주시면 더 구체적인 해결 방안을 제공할 수 있을 것입니다. 감사합니다. 오늘도 좋은 하루 보내세요 😸😸

 

image

dbcksrla님의 프로필 이미지
dbcksrla

작성한 질문수

질문하기