0

REST は、リソースのコレクション (物のリスト) に最も重点を置いているようです。システムに一度だけ存在するものをどのようにモデル化する必要がありますか? より具体的には、非常に単純なものです。モデル化されたシステムが、生徒、1 人の教師、および開いているか閉じているドアがある教室であるとします。ドアをどのようにモデル化しますか? 以下のようなものになるかと思います。

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」リソースから始める必要があります。

提案、ヘルプ、または (特に) 例をありがとう。...アラン

4

1 に答える 1

0

REST には、単一インスタンスのエンティティを違法または望ましくないものにするものは何もないと思います。つまり、特定の例では、ドアとライトを評価する必要があります。

  1. 独自のエンティティは関連しているが、それ以外はクラスから独立している、または
  2. 独自のアイデンティティを持たず、その存在がクラスの存在に依存する単なる属性またはクラスの含まれるオブジェクト

2 番目のオプションは、私にとってより合理的と思われるオプションです。それを受け入れると、ライトとドアのステータスをクラス プロパティの一部として返すことができます。

GET /class -- Returns the class attributes, including light and door status
PUT /class -- updates class attributes, including light and door status
于 2013-05-14T22:18:57.947 に答える