JPA
HTTP Method PUT, PATCH의 차이
Hzim
2023. 7. 4. 00:33
HTTP Method
HTTP Method란 클라이언트와 서버 사이에 이뤄지는 요청(Request)와 응답(Response) 데이터를 전송하는 방식을 말한다. 서버에 주어진 리소스에 서버가 수행해야 할 동작을 지정하는 요청을 보내는 방법이다.
HTTP Method는 9가지의 종류가 있다
- GET : 리소스 조회 (Read)
- POST : 전달한 데이터 처리, 생성 요청 (CREATE)
- PUT : 리소스 수정 (Update)
- PATCH : 리소스 일부 수정 (Update)
- DELETE : 리소스 제거 (Delete)
- HEAD : GET과 동일하지만 서버에서 리소스를 응답하지 않고 헤더만 반환
- OPTIONS : 본 요청을 하기 전, 안전성을 검사하기 위한 예비 요청에 사용
- CONNECT : 요청한 리소스에 대해 양방향 연결을 시작
- TRACE : 대상 리소스의 경로에 따라 루프백을 호출하여 검사
이 중에서 PUT과 PATCH는 리소스 수정이라는 공통점을 가지고 있지만, 약간의 차이점이 존재한다.
PUT
[리소스 예시]
회원(members) | 1 |
이름(name) | 김철수 |
나이(age) | 24 |
전화번호(phone) | 01012345678 |
리소스의 모든 칼럼에 대한 데이터 변경 요청의 경우
PUT/members/1
{
name:"김영희",
age:20,
phone:"01056781234"
}
회원(members) | 1 |
이름(name) | 김영희 |
나이(age) | 20 |
전화번호(phone) | 01056781234 |
리소스의 특정 칼럼에 대한 데이터 변경 요청의 경우
=> 요청을 보내지 않은 데이터는 null 값으로 변한다
PUT/members/1
{
name:"김영희"
}
회원(members) | 1 |
이름(name) | 김영희 |
나이(age) | |
전화번호(phone) |
PATCH
[리소스 예시]
회원(members) | 1 |
이름(name) | 김철수 |
나이(age) | 24 |
전화번호(phone) | 01012345678 |
리소스의 모든 칼럼에 대한 데이터 변경 요청의 경우
PUT/members/1
{
name:"김영희",
age:20,
phone:"01056781234"
}
회원(members) | 1 |
이름(name) | 김영희 |
나이(age) | 20 |
전화번호(phone) | 01056781234 |
리소스의 특정 칼럼에 대한 데이터 변경 요청의 경우
=> 요청을 보낸 칼럼에 대해서만 수정이 이뤄진다
PUT/members/1
{
name:"김영희"
}
회원(members) | 1 |
이름(name) | 김영희 |
나이(age) | 24 |
전화번호(phone) | 01012345678 |