我正在設計一個RESTful API。如何爲HTTP的多個鍵值參數設計REST URI獲取
一個服務應該爲多個鍵值對提供查詢功能。例如,客戶端可以通過一個HTTP GET請求查詢不同的產品和相關數量。
客戶想查詢產品1與55 其實我不希望我的URI看起來像這樣量44和產品2與量:
/produkt?productId1=1&productquantity1=44&productId2=2&productquantity2=55
,因爲我不知道有多少產品被查詢。
或者這樣:
/produkt?product=1,44&product=2,55
因爲客戶端怎麼能知道逗號之前存在產品ID和逗號的數量後。
有沒有人有其他解決方案?或者,提供用一個請求查詢多個產品的可能性不是RESTful?提供用相關數量查詢一個產品的可能性是否更好?如果客戶想要查詢更多產品,他們應該發送更多請求?
將查詢信息放入http-post會有什麼問題? – schippi
@schippi沒有什麼,但那不會是REST風格:) – dasblinkenlight
REST風格的Web服務不必完全基於GET。你可以很容易地獲得一個RESTful服務,它需要傳輸比GET請求中包含的數據更多的數據。使用任何HTTP方法是合理的。請參閱:http://en.wikipedia.org/wiki/Representational_state_transfer#Vocabulary_re-use_vs._its_arbitrary_extension:_HTTP_and_SOAP – Michael