Error Handling

Error 해결법 : HTTP DELETE Method 에 body 추가 할 때 500 error

고수트 2022. 2. 22. 23:36
반응형

Front 에서 back server 로
Delete method 에 body를 추가하여 보낼 때 오류가 나는 경우가 있다.
 
이유는 아래와 같으며 요약하면 DELETE 메소드에는 payload body 를 추가할 경우 요청이 거절될 수 있다.

A payload within a DELETE request message has no defined semantics;
sending a payload body on a DELETE request might cause some existing
implementations to reject the request.

 

해결법 (springboot)

=> body를 없애는것이 제일 맞는듯하지만 추가하고 싶다면 아래와 같이 payload body 를 @PathVariable 로 보내주던가 @RequestParam 으로 보내면 해결된다.

 

Front Code

// 이전 오류나던 코드
const { data } = await HTTP.delete(`/test/${testid}`, testList);

// 개선된 코드
const { data } = await HTTP.delete(`/test/${testid}?testList=${testList}`);

 


Back Code

// 이전 오류나던 코드
@RequestBody List<String> newMembers

// 개선된 코드
@RequestParam(value = "testList") List<String> testList

 

반응형