考慮接受GET請求列表項的一個RESTful API:當提供無效查詢參數時,REST API是否應返回4xx響應?
GET /1.0/items/
>> {"items": [{}, {}, ..., {}]} # All items returned
現在考慮每個項目都有一個色域,而且我可以過濾我的項目:
GET /1.0/items?color=blue
>> {"items": [{}, {}, ..., {}]} # Only blue items returned
如果我的API收到無效的查詢參數(上一個有效的查詢參數不無效值):
GET /1.0/items?notvalid=blue
預期的行爲應該是什麼?我的API是否應該返回一個4xx
響應,通知客戶端請求無效,或者API是否應該執行項目列表,就好像沒有提供過濾器參數一樣?