三方面搞定http協議之「請求方法」

2022-01-10 11:39:31 字數 1309 閱讀 5602

我所熟知的請求方法一共有六種:

get 請求指定的頁面資訊,並返回實體主體。

post 向指定資源提交資料進行處理請求(例如提交表單或者上傳檔案)

put 從客戶端向伺服器傳送的資料取代指定的文件的內容。

delete 請求伺服器刪除指定的頁面

head 返回的響應中的報頭

options 檢視伺服器的效能

而我們平時最常接觸的,就是前三種:get,post,put。關於get和post的區別,post和put的區別的討論,一直都是http請求方法中無法迴避的問題。

現在,我們就深入地**一下第乙個問題:

get和post有何區別?

1,get用於向伺服器查詢資料,而post用於更新伺服器的資料;

2,get傳輸資料較小,而post傳輸資料較大;(因為瀏覽器位址列對url的長度是有限制的,而get請求的資料正是作為search引數嵌在url中,所以它的請求資料會受到影響;

而post呢?它請求的資料是放在請求報文的主體中的,並不受影響,所以傳輸資料較大)

3,post比get更安全。(正如2所解釋的那樣,因為get請求的資料是放在url中的,而url是會顯示在位址列的,使用者看不到報文的主體內容,但會輕易注意到位址列,所以如果

get請求的資料報括一些使用者名稱密碼之類的敏感資訊,那就真的很不安全了)

沒錯,這就是get和post的真正區別了,接下來看第二個歷史大問題:post和put的區別

post和put區別在**?

根本區別-->post方法不是冪等的,而put方法是冪等的。

所以這個「冪等」是什麼鬼?簡單來說,冪等就是「無論你操作多少次,都是操作在乙個物件上」,所以put方法操作在原來的物件上,是對原來已存在的物件的更新;而post

是創造乙個新物件,並把這個新物件加到伺服器裡。

就比如我現在寫了一篇新部落格,要提交上去,就應該用post,因為我這個是新部落格嘛,跟原來的部落格沒關係,屬於新增的物件;而我寫完這篇部落格後發現有錯別字,然後我

進行修改,修改好後再提交上去,這時候就應該用put,因為我只是想對原來這篇部落格進行小小的修改更新罷了。

體會一下。

三方面搞定http協議之「報文模型」

關於http協議,這一塊的知識其實相當大,但是作為乙個前端開發者來說,我覺得只要知道三方面的內容就足矣把http協議是個什麼東西解釋清楚了。而這三方面,就是http的報文模型,請求方式以及狀態碼。這篇我們就來看報文模型。首先,報文是指網路傳輸與交換資料的基本單位,可以把它理解為乙個裝好了完整資料資訊...

三方面搞定http協議之「報文模型」

關於http協議,這一塊的知識其實相當大,但是作為乙個前端開發者來說,我覺得只要知道三方面的內容就足矣把http協議是個什麼東西解釋清楚了。而這三方面,就是http的報文模型,請求方式以及狀態碼。這篇我們就來看報文模型。首先,報文是指網路傳輸與交換資料的基本單位,可以把它理解為乙個裝好了完整資料資訊...

mysql優化三方面 MySQL優化包括的三個方面

資料庫已成為網際網路應用必不可少的底層依賴,其中mysql作為開源資料庫得到了更加廣泛的應用。最近一直專注於專案工程的開發,對開發過程中使用到的一些關於資料庫的優化原則進行了總結,希望能夠幫助更多的應用開發人員更好的使用mysql資料庫。mysql的優化主要包括三個方面,首先是sql語句的優化,其次...