假設我想獲取我的公司在緬因州擁有的所有商店的列表。從概念上講,這個請求可以被看作是使用RESTful URL識別收集子集
/stores?state=Maine (All stores such that the state of the store is Maine)
或
/states/Maine/stores (All of Maine's stores)
哪個更RESTful的,爲什麼?我的理解似乎都有其優缺點。
編輯:
我原來的例子存在的問題是有店鋪的狀態的子資源可能沒有直觀的感覺,所以這裏的另一個更詳細的例子:假設我可以用ISBN全球識別的書籍,或每個作家通過標題(假設沒有作者姓名兩本自己的書)。所以,根據這個計劃/books/0-525-94892-9
和/authors/Ayn_Rand/books/Atlas Shrugged
會參考同一本書。所以如果我想要Ayn Rand的所有書籍,我會GET /books?author=Ayn_Rand
還是GET /authors/Ayn_Rand/books
?
考慮到各國的名字是獨一無二的:) – Alexander