1

アイテムを購入するための UI に RESTful API を公開するアプリがあります。API の設計について質問があります。次のアクションを順番に実行する必要があるとしましょう

  1. 購入する商品を選択する
  2. 次に配送先住所を入力します

私の質問は、両方のデータを取得して両方を実行する単一の API を設計する必要があるかどうかです。それとも、2 つの API 呼び出しを設計する必要がありますか? 1 つは購入レコードを作成し、もう 1 つは配送先住所を更新するものですか?

4

2 に答える 2

1

RESTful API を設計すると述べた場合、通常は、意図した呼び出しではなく、リソースの設計から始めます。後で、最適化された HTTP 要求カウントのために他のリソースを含むリソース表現を選択できます。

次の方法で続行することを選択できます。

  1. アイテム リスト リソースをモデル化します (GET - すべてのアイテムをリストし、POST - アイテムの作成を許可します) /items/
  2. アドレス リスト リソース /addresses/ をモデル化する
  3. アイテム インスタンス リソースをモデル化する /items/item/resourceId
  4. アドレス インスタンス リソースをモデル化する /addresses/address/resourceId

これですべてのリソースが利用可能になり、使用パターンについて考えることができます。すべてのリソースは一般的に利用可能であり、マッシュアップできます。あなたの質問に答えるために考えられるアプローチは次のとおりです。

  1. 必要な住所の詳細を使用してアイテム インスタンス リソースを拡張します (lreeder が述べたように粗粒度)
  2. リソース /deliverydetails/ をアイテムと住所を含むリストおよびインスタンス リソースとしてモデル化し、deliverydetails をアイテム ID またはユース ケースに最も適したもので照会できるようにします。

それが役立つことを願っています! ところで。リソース指向設計の SOA アプローチに自動的に従うことになります。インターフェイスはビジネス要件に自然に適合し、より高度なユースケースをサポートするのに十分な汎用性を備えています。

ここに良い例があります

于 2013-09-29T17:02:41.983 に答える