inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

모든 개발자를 위한 HTTP 웹 기본 지식

HTTP 메서드 - GET, POST

POST /orders/{orderId}/start-delivery 질문있습니다.

694

suhani93

작성한 질문수 8

14

배달의 경우 여러가지 상태값[배달전, 배달 시작, 배달 끝]이 있을거 같은데 배달 상태의 변경의 의미가 있는 PATCH
/orders/{orderId}/delivery/{배달 상태값} 같은 식으로 url을 만들어야 하는거 아닌가요??

network

답변 3

11

김영한

안녕하세요. suhani93님

배달의 상태를 변경하다는 것은 단순히 해당 리소스의 값을 변경하는 정도로 끝나는게, 아니라 내부에서 매우 큰 프로세스가 실행됩니다.

이렇게 해당 리소스만 변경하는게 아니라 내부 프로세스를 실행해야 할 때는 PATCH 보다는 POST를 사용하는 것이 좋습니다.

단순히 회원 정보를 변경하는 것 처럼 특정 리소스의 데이터를 변경할 때 PATCH를 사용하는 것이 좋습니다.

추가로

POST /orders/{orderId}/delivery/{배달 상태값} 같은 방식으로 설계하기가 좀 애매한 점이 실무에서는 배달 상태값을 단순히 바꾸는게 아니라 배달 상태에 따른 전달 데이터가 각각 다를 확율이 매우 높습니다. 예를 들어서 배달에서 전달하는 데이터와 취소에서 전달하는 데이터가 매우 다르겠지요.

따라서 다음과 같이 다르게 정의되는게 더 나은 설계일 수 있습니다.

POST /orders/{orderId}/delivery/배달

{데이터A, 데이터B, 데이터C}

POST /orders/{orderId}/delivery/취소

{데이터D,데이터E}

감사합니다.

4

9kku2

저도 같은 궁금증을 가지면서 보고있었는데 궁금증이 해결되었습니다 감사합니다.

2

suhani93

많은 도움이 되었습니다.
답변 감사합니다.

캐시 관련 질문입니다.

0

616

1

ETag 질문입니다.

0

727

1

캐시의 설정 주체

0

534

1

영속쿠키 질문입니다.

0

503

1

협상(accept-language)

0

686

1

에러 코드의 구현 주체

0

437

1

웹서버가 구현?

0

595

1

필수헤더?

1

559

1

Host와 Port

0

772

1

다른 도메인이 같은 포트를 사용하는 경우

0

1258

1

표준 헤더와 임의 헤더

0

532

1

POST 등록 후 Location 헤더

0

568

1

프로세스의 상태가 변경되는 경우에 Post 사용

1

1808

1

지속연결에 대해서.

0

691

1

제가 아는 쿼리 파라미터 개념이 맞는지 확인 부탁드립니다.

0

592

1

캐시 내용중 no cache 일때

0

357

1

DNS 서버 관련 질문

1

747

1

캐시로 저장된 파일의 유효기간은 얼마나 되나요?

0

661

1

웹브라우저 요청흐름 질문입니다.

0

846

1

캐시 무효화 질문드립니다

0

561

1

리다이렉트와 리다이렉션 차이?

0

2591

1

쿠키 및 세션 관련 질문드립니다

0

586

1

HTTP 메서드 ( HTTP 메서드의 속성 파트 ) 강의의 멱등 내용에 대하여 질문드립니다.

0

1642

1

header 나 gzip으로 데이터 보낼떄 데이터는 base64로 인코딩되서 가는 건가요?

0

480

1