我在我的域模型中有一個特定的案例,現在我有一些難以以其他方式設計這種情況。REST API - 將資源設計爲主要和子資源
我有我的域名3個實體:訂單,賣家和公司
公司就像是屬於小公司另一家公司(大),喜歡的品牌。例如:Zappos是亞馬遜的品牌。
賣方是一個公司,可以賣品牌門戶網站/產品,例如:市場。
最後,訂單可以屬於一個品牌(例如:亞馬遜或Zappos)或賣家。
我認爲在訂單實體作爲我的API的主要資源:
GET order?status=NEW
GET order/{id}
的問題是:我該怎麼設計我的API,例如,檢索品牌或者一個所有打開的訂單賣家?
我不能以這種方式(如下圖)創建,因爲我有兩個子資源被稱爲「秩序」兩型動物主要資源:
GET seller/{id}/order?status=NEW
GET company/{id}/order?status=NEW
如果我以這種方式(如下圖)創建我無法檢索訂單由銷售者或某公司過濾:
GET order?status=NEW
這種方法的另一個問題是,由於訂單一直屬於資源(公司或賣家),所以它似乎很奇怪獨此資源存在,作爲主資源。
什麼是解決這個問題的最好方法?