2017-12-28 19 views
-3

現在、GETリクエスト用のREST APIを開発中です。REST API GETリクエストのURLパターンデザイン

私はアプリケーション、カテゴリ、プラットフォームなどのスポンサード広告を返すAPIを開発しています。アプリケーションはgoogle、プラットフォームはモバイルサイト、カテゴリはホームページバナー、上記の入力に基づいて広告を返すAPIです。 私は同じアプリケーションに複数のカテゴリを持つことができ、同じカテゴリはどのアプリケーションやプラットフォームにも存在することができます。 URLpatternを正しく設定する方法がわかりません。

いいURLパターンを教えてください。

以下のオプションを検討しています。

  1. API /スポンサー/ {アプリケーションID}/{カテゴリ} /?platformId = 1

  2. API /スポンサー/ {カテゴリ}/{アプリケーションID} /?platformId = 1

カテゴリは文字列です。壁紙、バナーなど

+0

なぜそのクエリ文字列ですか?あなたは誰に属しているのかを自分で考える必要がありますが、両方のURLが間違っているように見えます。 –

答えて

0

私は、通常、検索、フィルタ、並べ替え操作で何かを行うクエリ文字列として値を渡す方が良いと思います。リターン(GET - ので、あなたの説明に基づい順

api/sponsored?category=1&applicationId=2&platformId=1 
+0

カテゴリは文字列です –

+0

アプリケーションのニーズに基づいて数値の代わりに文字列の値を入力できます。 api/sponsored?category = {category}&applicationId = {applicationId}&platformId = {platformId} –

3

心配しないでください、私のURIのREST APIのは

  • のようなもの/ API /アプリケーション/ {ID} <だろう)、(POST、PUT)を作成し、更新が (PUT)アプリケーションオブジェクト
  • /API /カテゴリ/ {ID}
  • /API /プラットフォーム/ {ID}

各オブジェクトには一意のURIがあります。

私は特定の広告にアクセスし、作成するためにRESTを使用していた場合、それは

  • /API /広告/ {ID} <のように見えるかもしれません - リターン(GET)、作成(POST、PUT)、アップデート (PUT)広告オブジェクト
  • /API /広告/ < - (GET)すべての広告を返す
  • /API /広告アプリケーション= {アプリケーションID} &カテゴリ= {区分} &プラットフォーム= {platformId} < - クエリ/フィルタ広告(GET)

RESTではなくRPCを使用できます。特に、「結合」データを返す場合は、より効率的で簡単です。例えば:

  • /RPC/GetAds = {[区分} &プラットフォーム= {platformId}
  • /RPC/GetAdsアプリケーション= {アプリケーションID} &カテゴリ?A = {アプリケーションID} & C = {[区分} & P = {platformId} < - 少ないネットワーク・トラフィック

すべてがRESTfulなである必要はありません。

関連する問題