2013-05-14 4 views
0

REST는 자원 모음 인 사물 목록에 가장 집중하는 것처럼 보입니다. 시스템에 정확히 존재하는 것을 어떻게 모델링해야합니까? 그리고 좀 더 구체적으로는 매우 간단합니다. 모델링 된 시스템이 학생, 교사 1 명, 문이 열렸거나 닫힌 교실이라고 가정합니다. 어떻게 문을 모델링하나요? 나는 그것이 다음과 같을 것이라고 생각하고있다.REST API에서 글로벌 리소스를 모델링하는 방법은 무엇입니까?

GET and POST operations are supported. 
GET https://<ipaddress>/classroom/door_status 
    Returns 200 if successful, with a response containing: 
     DoorStatus - String - Value of door status, either "Open" or "Closed" 
POST https://<ipaddress>/classroom/door_status 
    Specify the attribute of: 
     DoorStatus - String - Value of desired door status, "Open" or "Closed" 
    Returns 201 if the status was successfully modified. 

DELETE는 항상 실패 할 것이다.

물론 교실에는 여러 개의 문이있을 수 있지만 잠시 나와 함께 있어야합니다. 물론 교실을 갖춘 건물에는 여러 개의 강의실이 있습니다. 다시 나와 함께 참아 라.

다음으로 교실 용 light_status 리소스를 추가 할 수 있습니다. 이럴 경우 DoorStatus 및 LightStatus 속성이 대신있는 "global_properties"리소스로 시작해야합니다.

제안, 도움 또는 (특히) 예제를 제공해 주셔서 감사합니다. ... Alan

답변

0

단일 인스턴스 엔티티를 불법 또는 바람직하지 않게 만드는 REST에는 아무것도 없다고 생각합니다. 즉, 특정 예를 들어, 당신은 문 및 빛 경우 평가할 필요가 말했다 :

  1. 는 관련이 있지만, 클래스, 그렇지 않으면 독립적 인 자신의 실체가 있습니까, 또는
  2. 는 속성 또는의 객체를 포함 자신의 정체성이없고 그 존재가 클래스의 존재에 달려있는 클래스

두 번째 옵션은 나에게 더 합리적인 것처럼 보입니다. 수락하면 다음과 같이 클래스 속성의 일부로 조명 및 문 상태를 반환 할 수 있습니다.

GET /class -- Returns the class attributes, including light and door status 
PUT /class -- updates class attributes, including light and door status 
관련 문제