Dot-Net
RESTful Services 中特定場景的最佳實踐
我有兩個簡單的問題,我只想了解社區的意見 -
- 如果我有一個可以使用 ID 或日期 (20110705) 訪問的實體,那麼用於訪問實體的 url 約定的最佳做法是什麼?
- 得到:
/myEntities/{date}和/myEntities/{id}?(服務將解析 {object} 以檢查它是日期還是 id。- GET :
/myEntities/date/{date}和/myEntities/id/{id}*?
- 在 WCF Rest 中,我也可以這樣做
/myEntities/?date={date},/myEntities/?id={id}這是 REST 的好習慣嗎?換句話說,就最佳實踐而言,使用它是否可以接受,?date={date}而不是date/{date}/喜歡它只是一個簡單的個人偏好?提前致謝。
我覺得這很大程度上取決於偏好和風格。
話雖如此,我個人更喜歡:
/myEntities/date/{date}和/myEntities/{id}不需要顯式地使用 ID 選項;這是假設的。
關於#2;我個人不喜歡這種語法:
/myEntities/?date={date}如果它在 WCF 中作為 URI 模板實現- 因為如果您有多個參數,則假設參數的順序可以相互調整 - 但它們不能與 URI 模板一起使用。但是,作為標準查詢字元串參數,這是完全可以接受的,並且在所有地方都可以使用——Google、雅虎、亞馬遜和其他人都使用這種風格。如果有的話,這正是“查詢字元串”的含義 - 查詢的參數……這正是您在通過**__**檢索實體時所做的事情。(但我和你一樣好奇其他人會說什麼)。