2010-06-20 167 views

回答

3

如果您只是爲瀏覽器開發您的web應用程序,您應該去郵政並得到。

但是,例如, REST-API應該/可以使用put和delete方法。因此,您可以更好地定義要在特殊資源上執行的操作。 http://en.wikipedia.org/wiki/Representational_State_Transfer

+0

如何使用客戶端腳本通過Web服務與服務器通信的Web應用程序? – 2010-06-20 18:42:47

+0

是的,你是對的。我把例如在REST-API之前,因爲這是我想到的第一個例子。放入/刪除方法有多種原因。 Web服務是一個很好的流行詞。 :) – TooAngel 2010-06-20 19:01:09

3

有一個關於這個主題在這裏一個非常有趣的文章:http://www.artima.com/lejava/articles/why_put_and_delete.html

輕微提取物:

PUT和DELETE是GET和POST之間的中間。 PUT或DELETE和POST之間的區別在於PUT和DELETE是冪等的,而POST不是。必要時可以重複PUT和DELETE。假設您正嘗試將新頁面上傳到網站。假設你想在http://www.example.com/foo.html創建一個新頁面,所以你輸入你的內容,然後把它放在那個URL上。服務器在您提供的URL處創建該頁面。現在,讓我們假設您的網絡連接出現故障。您不確定,請求是否通過?也許網絡很慢。也許有代理服務器問題。因此,再次嘗試或再次嘗試是完全正確的 - 儘可能多地嘗試。因爲將同一個文檔放到同一個URL十次與放置一次不會有什麼不同。 DELETE也是如此。您可以刪除十次,這與刪除一次相同。

+0

正如那篇文章所說,雖然瀏覽器並不真正支持put和delete。有沒有什麼理由通過郵件去模仿,而不是僅僅使用post? – 2010-06-20 18:29:25

+0

瀏覽器可能不支持放置和刪除 - 這並不意味着它不是由服務器處理(冪等性很重要)。現在越來越多的開發者正在利用AJAX這樣的技術,它不再是一個你不能在HTML表單中使用它們的問題。 – 2010-06-20 18:40:38

+1

或者換一種說法:瀏覽器*支持*,只有HTML表單不支持。但是,瀏覽器可以通過許多其他方式提交數據,而不僅僅是通過HTML表單。 ECMAScript就是其中之一,Flash就是其中之一,Java,Silverlight,你就是它的名字。 – 2010-06-20 22:54:22

相關問題