私はリソースを持っていますが、これは基本的にシンプルなCRUDドキュメントであり、自己の現在の代わりに「同期」状態に「切り替える」ことができます値は現在、それが現在同期されている "親"ドキュメントの値を返します。バイナリ状態のリソースのRESTfulなデザイン
私はこれをモデリングするためのRESTfulな方法を見つけようとしています。リソースには、この状態を示すプロパティーがあります。Synchronzied = true/false
およびParentId
プロパティーは、同期するリソースを示します。
PUT
の更新中にこれを変更できるようにすることもできますが、これはドキュメントの一部ではなくドキュメントに関するメタデータであるため、何らかの誤りがあります。私はまた、要求された状態が引数として渡されるところのPOST /document/{id}/synchronized
要求を考慮しました。
どちらもどちらも気分が良くありません。私はちょうど1つの値のために提出されたデータを解析しているように感じるので、最初は少しぎこちなく感じます、残りは本質的に私たちが同期している場合は破棄されます。 2番目のケースでは、1つのプロパティに対してネストされたリソースを作成するのは間違っています。
私が正しく理解していれば、それは同じリソースではなくなっているという点で、状態を「切り替える」ことはRESTと一致していないようです。しかし、リソースが新しいリソースに変換されず、両方のフォーマットにアクセスできるようにするには、単純にリソースを別の方法で表現していて、新しいものを作成しないので、コンテンツタイプのネゴシエーションに行きます。 – Brenden