私は、テストとテスト実行のメタデータ用にRESTfulなAPIを設計しています。私は2つのリソース、Test
とTestRun
を持っています。フードの下では、データベースに1対1の関係があります。POST要求を別の(関連する)リソースに送信してリソースを作成/変更する
まず、POST
をapi/v1/test
に送信してTest
リソースを作成します。
次に、このテストを開始する必要があります。私はPOST
をapi/v1/test/{id}/run
に送信することで、これはTest
リソースに関連するTestRun
リソースを作成します。
そしてIは、対応するTestRun
リソース(finish_time
、result
等のような、いくつかのフィールドを設定)を修正する、api/v1/test/{id}/finish
にPOST
を送信することによって、試験を停止することができます。
APIのユーザーはリソースへのアクセスは決してGET
になりません。また、関連するTest
リソースを介してアクセスするだけです。
このデザインはAPIユーザーにとっては非常に簡単ですが、これは開発者にとっても簡単なことではありません。このデザインは私が十分に上がったか? RESTの原則やベストプラクティスに違反していますか?私はこれに関するどんな情報も感謝します。
全体APIの拡張された設計記述:https://gist.github.com/Ch00k/27724e29ec1bf044ebbfdabef9e842d5
「これは開発者にとってもまったく間違いありません。何が問題なの? –
@Lutz Hornそれは明らかに間違った質問だった:)私はそれが良い方法であるかどうか、そしてそれがRESTのベストプラクティスに反していないかどうか、私はちょうど思っていた。 –