我被告知POST以某種方式發送給服務器,但GET不。儘管如此,這聽起來有點瘋狂。HTTP獲取更高效的POST服務?
基本上我正在從事一個web項目,其中每個客戶端每隔2秒從許多國家和可能的互聯網連接調用Web服務。所以我們希望在JavaScript和ASP.Net之間儘可能小的調用和響應。
安全性不是問題,基本上調查只是返回數據。無論如何都需要登錄才能使用它。
我被告知POST以某種方式發送給服務器,但GET不。儘管如此,這聽起來有點瘋狂。HTTP獲取更高效的POST服務?
基本上我正在從事一個web項目,其中每個客戶端每隔2秒從許多國家和可能的互聯網連接調用Web服務。所以我們希望在JavaScript和ASP.Net之間儘可能小的調用和響應。
安全性不是問題,基本上調查只是返回數據。無論如何都需要登錄才能使用它。
我被告知POST以某種方式發送給服務器,但GET不會。儘管如此,這聽起來有點瘋狂。
你被告知錯了。唯一的區別是POST允許向服務器發送更大量的數據,當然發送的數據越多,速度越慢。但是,如果您發送的數據量相同,則在GET和POST請求之間的性能方面不會有任何差異。
要注意的一件重要的事情是,如果您從JavaScript調用此服務GET請求可能會被客戶端瀏覽器緩存。因此,舉例來說,如果您使用AJAX GET請求反覆調用同一個網址,您可能會獲得緩存值並且服務器永遠無法訪問。要解決此問題,您可以在查詢字符串中附加一個隨機數字,該字符串對服務器沒有任何意義,但哪個更改 url並避免它被緩存。
當發送通過ajax文章時,一些開發人員可能在表單提交和點擊提交按鈕上發佈了帖子。稍後當他們按下發送按鈕時,這兩個操作都會被觸發。這可能是那些告訴你雙倍發送經驗的人的經驗。
注意:POST的雙重發送完全是開發人員的錯。 HTTP POST方法與它無關。
精明的讀者會認識到使用隨機URL的時間更長,因此效率比POST低。 – 2011-05-30 08:28:50
事實上,我發現使用GET的效率較低。我認爲,因爲字符必須被編碼,請求稍大。從來沒有聽說過這個雙服務器之前,雖然。 – 2011-05-30 08:46:19