2015-04-23 124 views
-1

我正在尋找基於doctrine2的RESTful API設計的最佳方法。PHP RESTful API如何獲取資源中的詳細信息

我有兩個例子表。產品和產品分類(一對多關係)

當我提出類似產品的請求時,我可以看到沒有屬性的產品列表。

當我提出類似/產品/細節的請求時,我希望看到附有每個產品的子資源屬性列表。

我不知道是更好地做出單獨的行動(與separete查詢)或使用相同的查詢和相同的DataProvider作爲/ products行動,並把某種類型的連接到/ product-attribiutes資源。

問題

一般的問題是「你是否使用相同的查詢/產品/產品/信息採取行動?」

+0

結果數據集是否相同?不,所以不會,你不會使用相同的查詢... –

回答

0

一般來說,爲了/products呼叫應該返回所有的,相關數據字段產品(細節/庫存/成本等)。如果撥打/products/details應只顯示該產品的詳細信息字段。

0

就RESTful API設計而言,一種可能的解決方案是將details作爲/products的可選參數。使用此解決方案,/ products的查詢將僅返回沒有屬性的列表,而/products?details=true的查詢將返回填充了所有詳細信息的列表。

另一種可能性是實現expandembed查詢參數,該參數可用於指定應展開哪些特定字段。例如,查詢/products?expand=company,shipping_info將擴大companyshipping_info資源。這符合本指南的建議:http://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api#autoloading

相關問題