2012-05-14 7 views
0

モバイルアプリで使用するAPIを設計していますが、特定の要件があります。 2つの異なるリソースを作成する必要があるケースが1つあり、1つのHTTPリクエストで処理する方が好きなので、複数のリクエストやコールバックなどを混乱させる必要はありません。APIデザイン - 1つのルートに2つの異なるリソースを作成する

簡素化するために、 BucketsというリソースとApplesというリソースがあります。バケットには多くのApplesがあり、バケットにはユーザーの名前を付けることもできます。ユーザーはバケットに名前を付けてから、アプリ全体を通して、その特定のバケットに異なるApplesインスタンスを割り当てることができます。

ルートを作成する方法がわかりませんユーザーがアップルを見て、新しい名前のバケットに割り当てようとしている場合。この場合、私のルートは最初に新しい名前のバケットを作成してから、そのバケットにアップルを追加する必要があります。

私がこれまでしているしているルートの一部:

POST /buckets     # create a new bucket 
POST /buckets/:bucket_id/apples # create a new apple within an existing bucket 

は何このハイブリッドルートは次のようになりますか?おそらく次のようなものがあります:

POST /buckets/new/apples   # post data would contain NAME of new bucket and ID of apple 

何か提案がありますが、繰り返しておきますが、これはすべて1つのHTTPリクエストで行いたいと思います。それがRESTfulデザインパターンを破るかどうかはわかりません。

答えて

関連する問題