2016-04-13 9 views
0

RESTful APIを使用していますが、設計上問題が発生しました。 私はそれについて調べましたが、私はこの特定の事件については何も見つけることができません。RESTful URL - リソーステンプレートに基づいてリソースを作成する


私のAPIはチケットを買うために使用されるので、私は、リソースの2種類持っている:ticketTemplatesticketPurchasesを。

チケットテンプレートは最初に作成され(購入可能なチケットのタイプ、名前、期間、価格で定義されます)、誰かがチケットを購入したとき(= ticketPurchasesの行をデータベースに追加する場合)、チケットテンプレートid。

あり、チケットテンプレートのすでに実装ルートです:/ticketTemplates

は今、私は、チケットテンプレートIDに基づいてチケットを購入するためにルートを実装していますので、これ買ったチケットは継承しますテンプレート名、期間、および価格。

私は(POST)/ ticketTemplates/[templateId]/ticketPurchasesと考えていました。

しかし、私は独立して自分のテンプレートIDのすべてticketPurchasesを取得できるようにする必要があるため(そう、ないでそれを行う:(GET)/ ticketTemplates/[れるtemplateId]/ticketPurchases)、私が見る唯一のソリューションである:

  • 作成:(POST)/ ticketTemplates/[れるtemplateId]/ticketPurchases
  • 取得:(GET)/ ticketPurchases

又は

  • 作成:(POST)/ ticketPurchases(リクエストのボディにテンプレートIDを渡す)
  • 取得:(GET)/ ticketPurchases

どちらが一番いいですか? URLは、私の最初の命題のように、リソースの作成と検索で同じではないのですか?

ご協力いただきありがとうございます。

答えて

0

それがそのままリソースURLを保つためにおそらくより有意義だ、それは私が

を選ぶだろう、むしろ他のリソースに沿ってつまずくと、それは

を行くべき場所を発見するよりも、開発者が追従するためのより多くの意味と容易になります作成:(POST)/ ticketPurchases(リクエストのボディにテンプレートIDを渡す)

取得:(GET)/ ticketPurchases

自分自身で前の1つ以上

+0

それは意味がありますが、私はそれが良い選択であるとは確信していませんでした。あなたのお返事ありがとうございます! – Enzo

関連する問題