我正在Java中創建REST服務,並對GET方法的參數有疑問。 我必須通過以下PARAMS在GET請求REST服務的GET請求的參數Java
功能
「GET」 文件狀態:
PARAMS:
時間範圍:(字符串)
FlowId :(字符串)
ID_A =或ID_B =或兩者(字符串)
IS_ADD_A =或IS_ADD_B =或兩者(字符串)
的Regex =(字符串)
曲奇= XXXXX
因此,作爲有6 params,因此將它作爲查詢字符串傳遞將不是一種有效的方式,並且不能在主體中相同(因爲它違背HTTP GET規範) 將此作爲POST調用將違反REST原則,因爲我想從服務器獲取數據, 解決這個問題的一種有效方法是將參數傳遞爲查詢字符串是沒有問題的,將它傳遞到與HTTP規範相反的主體中,將其作爲可能不太好的標題,從而使其成爲POST請求,這將聲明字段的REST原則。
yes我同意put body會違反HTTP規範,並且獲取數據的POST會違反REST,那麼使用params作爲頭文件是否有效並且明智? –
你可能會爭辯說,提供一個搜索終結點,例如每個POST的myentity/search和發送查詢條件不會違反REST原則。查詢可能是一個有效的實體,POST不需要創建一些東西,但可以。 – benohead
我不會使用標題來傳輸查詢條件。標題是用於元數據,並放在那裏內容感覺不對。 – benohead