我正在設計一個RESTful API。我需要檢索一個資源(複雜報告),通過一個非常長的過濾器列表。事情是這樣的:從RESTful API檢索資源,但URI可能會超過允許的長度
所以我應該使用GET HTTP動詞,但如果URI超過允許的URL長度(由瀏覽器,Web服務器或中間代理),我可以使用JSON的POST請求身體封裝過濾器這樣做? POST動詞用於創建資源和部分更新,但不用於檢索資源。我該如何解決這種情況。請告訴我一個符合REST基礎的解決方案,因爲編碼URL以減少長度並不是一個令人滿意的解決方案。我一直在研究很多,但我沒有找到適當和明確的指導方針。任何幫助將不勝感激。
你期待你的查詢字符串是多久?看看這篇文章。實際上,我懷疑你會達到一個限制 - 特別是對於API http://stackoverflow.com/a/812962/2812842 –
謝謝@ scrowler的鏈接。我已經檢查了一些這樣的評論,但我不知道多久的網址可以,所以我不能保證它不超過2048個字符(IE的情況下)。這取決於用戶界面選擇的過濾器,事實上它可能如此之久。 – Delmo