簡單的說
就是整套CRUD(增刪改查)操作,C對應POST,R對應GET,U對應PUT,D對應DELETE。
在實際的做的時候,很多人卻沒有按照HTTP規範去做,導致這個問題的原因有很多,比如說:
1.很多人貪方便,更新資源時用了GET,因爲用POST必須要到FORM(表單),這樣會麻煩一點。
2.對資源的增,刪,改,查操作,其實都可以通過GET/POST完成,不需要用到PUT和DELETE。
3.另外一個是,早期的但是Web MVC框架設計者們並沒有有意識地將URL當作抽象的資源來看待和設計 。還有一個較爲嚴重的問題是傳統的Web MVC框架基本上都只支持GET和POST兩種HTTP方法,而不支持PUT和DELETE方法。
進一步解說
GET操作是安全的。所謂安全是指不管進行多少次操作,資源的狀態都不會改變。比如我用GET瀏覽文章,不管瀏覽多少次,那篇文章還在那,沒有變化。當然,你可能說每瀏覽一次文章,文章的瀏覽數就加一,這不也改變了資源的狀態麼?這並不矛盾,因爲這個改變不是GET操作引起的,而是用戶自己設定的服務端邏輯造成的。
PUT,DELETE操作是冪等的。所謂冪等是指不管進行多少次操作,結果都一樣。比如我用PUT修改一篇文章,然後在做同樣的操作,每次操作後的結果並沒有不同,DELETE也是一樣。
POST操作既不是安全的,也不是冪等的,比如常見的POST重複加載問題:當我們多次發出同樣的POST請求後,其結果是創建出了若干的資源。
安全和冪等的意義在於:當操作沒有達到預期的目標時,我們可以不停的重試,而不會對資源產生副作用。從這個意義上說,POST操作往往是有害的,但很多時候我們還是不得不使用它。
HTTP POST GET 本質區別詳解: http://blog.csdn.net/gideal_wang/article/details/4316691