我有一個名爲Pricing
的資源,我想要檢索。一個Offer
可以有定價和一個Promo
可以有Pricing
資源,並有另一個實體Customer
與Pricing
可以映射。我想根據OfferId
/PromoId
/CustomerId
之一檢索Pricing
。RESTful服務的網頁設計
設計URL對於這一點,我運行到兩個選項:
選項1:把它作爲查詢字符串
/pricing?OfferId=234&PromoId=345&CustomerId=543234
選項2:有三個API
/pricing/offer?id=234
/pricing/promo?id=345
/pricing/customer?id=543234
IMO,OfferId
/PromoId
/CustomerId
應該被視爲資源的屬性。因此,傳遞屬性作爲查詢字符串。我更傾向於選項1.
選項2避免如果其他條件檢索資源,看起來更清潔,但似乎是支持REST標準的URL設計?
什麼是設計URL的REST標準。你會推薦哪個選項?
我覺得一般的共識是,你應該有3個網址像/定價/優惠/ 1234。請參閱示例http://code.msdn.microsoft.com/Build-truly-RESTful-API-194a6253 –