5

Web サービスを作成していますが、パス名に関していくつか質問があります。RESTful Web サービスでリソースに対するアクションをどのように指定しますか?

例: クイズ リソース。通常の CRUD アクションがあり、クイズも実行したいとします。新しいクイズの生成など。それが行動です。/quiz/top5またはまたは何のようなパスを使用します/quiz?type=top5か?

RESTful サービスを作成するときに、リソースに対してアクションを実行するパスをどのように記述するかがわかりません。

4

6 に答える 6

1

それはあなたが好むものです。個人的には、last.fm API の動作が気に入っています。

http://www.last.fm/api/intro

しかし、優れた標準を探している場合は、次の投稿をご覧ください。

最良/一般的な RESTful URL の動詞とアクションは何ですか?

動詞なしで REST URL を作成する方法は?

于 2013-04-09T15:03:34.013 に答える
1

apigee の次の電子ブックをお勧めします: Web API Design: Crafting Interfaces that Developers Love

彼らのアドバイスに従って:

  • 実用的な RESTful 設計の第 1 の原則は、シンプルなものをシンプルに保つことです。
  • ベース URL はシンプルで直感的なものにしてください。
+------------+-------------------+--------------+----------------------------------------+------------------+
| Resource   | POST create       | GET read     | PUT update                             | DELETE delete    |
| /quizzes   | Create a new quiz | List quizs   | Bulk update quizs                      | Delete all quizs |
| /quizes/12 | Error             | Show Quiz 12 | If exists update Quiz 12, if not Error | Delete Quiz 12   |
+------------+-------------------+--------------+-----------------------------------------+------------------+

必要な上位リストに関しては、「ページネーションと部分的な応答」セクションで概説したものと同様のソリューションがニーズに合う可能性があります。

quizzes/top?limit=5

quizs/topこれにより、最初にデフォルト値 (5 または 10 項目) でリソースを作成し、後で項目数をページ分割/変更する機能を提供できます。

于 2013-04-09T15:33:35.117 に答える
0

同様の質問に対するこの回答https://stackoverflow.com/a/11170376/300886を読むことをお勧めします。

一般に、API のどの部分を GET 経由で使用可能にし、どの部分を POST 経由で使用可能にするかを検討する必要があります。GET を介して利用可能なリソースは、通常、名詞を使用して説明する必要があります。アクション (おそらくクイズへの回答を投稿するなど) は、動詞を使用して、おそらく名詞の後に記述された POST (または DELETE など) を介して利用可能にする必要があります - リソースの名前アクションが実行されます。

于 2013-04-09T15:04:50.127 に答える
0

URL はオブジェクトを識別します。HTTP メソッドは、サーバーがオブジェクトに対して実行するアクション (または操作) を指定します。

例えば:

/quiz/top5
  • HTTP GET : クライアントはクイズのトップ 5 を表示するように要求します。これは新しいものを作成することを意味しますか? または、これは既存のものを表示することを意味しますか? それはあなた次第です (GET の規則は、サーバーの状態を変更せずにオブジェクトを要求することです)。
  • HTTP POST : クライアントは変更を保持するように要求します
于 2013-04-09T15:22:06.047 に答える
0

それは本当にあなた次第です - RESTful パターンは命名規則を指示しません。

最良/一般的な RESTful URL の動詞とアクションは何ですか? これはあなたを助けるかもしれませんか?

わかりやすいルートを作成してください: 例: quiz/show/{id}、quiz/top/{number} など...

編集: Rails Convention から取得した、ルート アクションの命名に関するコメントへの回答を追加します。 http://guides.rubyonrails.org/routing.html#crud-verbs-and-actions

于 2013-04-09T15:00:34.253 に答える