우리가 책 엔티티REST를 통해 GET 쿼리에 추가 정보를 추가하는 좋은 전략은 무엇입니까?
/books
에서 듣기와 클라이언트가 우리가 책에 할인 혜택을 제공을 시작한다고 가정 일반적인
GET /books/{id}
에서 책을 얻을 수 있습니다 제공하는 편안한 API를 제공 감안할 때 우리의 가장 경계하는 구매자들. 이 구매자에게는 할인 코드가 주어지며 해당 코드는 책 가격을 낮 춥니 다. 할인 코드를 사용하여 쿼리에 대한 응답이
GET /books/4
{"id":4, "price":"24.95", "yourPrice":"19.95"}
우리가 알아 낸 얻을 수있는 백엔드 처리하지만, 될 수있다
따라서, 일반적인 반응은
GET /books/4
{"id":4, "price":"24.95"}
될 수있다 클라이언트가 편안한 API를 통해 할인 코드를 제출하는 가장 좋은 방법은 무엇입니까?
일부 도서는 할인 대상이며 다른 도서는 할인 대상입니다. 할인은 광범위한 것 (모든 것에서 20 % 할인)이 아니라 특정 코드 (또는 고객/코드 조합)에 대한 특정 가격으로 매핑됩니다.
은 우리가 고려했습니다
이 URL을 해결하는데 투입
GET/코드/{someCode}/책/{ID}
헤더 값에 코드를 추가
쿼리 문자열 사용
GET/books? cod e = myCode
다른 건?
편집 : 우리의 목표는 일회용 코드를 구현하지 않는 것입니다. 대신, 이러한 할인 코드는 고정 된 책 세트에 대해 고정 된 횟수만큼 사용될 수 있습니다.
"쿼리 변수 만 사용하여 알고리즘에 연결되는 인수를 제안하십시오."물론 여기에 해당됩니다. 감사. – gmoore