http定義了與伺服器互動的不同方法,最基本的方法有四種,分別是get(查)post(改),put(增),delete(刪)。
http是基於tcp/ip的關於資料如何在全球資訊網中如何通訊的協議。
在我大全球資訊網世界中,tcp就像汽車,我們用tcp來運輸資料,它很可靠,從來不會發生丟件少件的現象。但是如果路上跑的全是看起來一模一樣的汽車,那這個世界看起來是一團混亂,送急件的汽車可能被前面滿載貨物的汽車攔堵在路上,整個交通系統一定會癱瘓。為了避免這種情況發生,交通規則http誕生了。http給汽車運輸設定了好幾個服務類別,有get, post, put, delete等等,http規定,當執行get請求的時候,要給汽車貼上get的標籤(設定method為get),而且要求把傳送的資料放在車頂上(url中)以方便記錄。如果是post請求,就要在車上貼上post的標籤,並把貨物放在車廂裡。當然,你也可以在get的時候往車廂內偷偷藏點貨物,但是這是很不光彩;也可以在post的時候在車頂上也放一些資料,讓人覺得傻乎乎的。http只是個行為準則,而tcp才是get和post怎麼實現的基本。
(1).所謂安全的意味著該操作用於獲取資訊而非修改資訊。換句話說,get 請求一般不應產生***。就是說,它僅僅是獲取資源資訊,就像資料庫查詢一樣,不會修改,增加資料,不會影響資源的狀態。
(2).冪等的意味著對同一url的多個請求應該返回同樣的結果。
(3)get請求的資料會附在url之後(就是把資料放置在http協議頭中),以?分割url和傳輸資料,引數之間以&相連
(4)get方式提交的資料最多只能是1024位元組
(5)get產生乙個tcp資料報,對於get方式的請求,瀏覽器會把http header和data一併傳送出去,伺服器響應200(返回資料);
(6)get 是會被瀏覽器主動快取的,如果下一次傳輸的資料相同,那麼就會返回快取中的內容,以求更快地展示資料。
(1)post把提交的資料則放置在是http包的包體中
(2)理論上post提交的資料沒有限制,可以傳輸大量資料
(3)post產生兩個tcp資料報,對於post,瀏覽器先傳送header,伺服器響應100 continue,瀏覽器再傳送data,伺服器響應200 (返回資料)。
(1)get在瀏覽器回退時是無害的,而post會再次提交請求
(2)get產生的url位址可以被bookmark,而post不可以。
(3)get請求會被瀏覽器主動cache,而post不會,除非手動設定。
(4)get請求只能進行url編碼,而post支援多種編碼方式。
(5)get請求引數會被完整保留在瀏覽器歷史記錄裡,而post中的引數不會被保留。
(6)get請求在url中傳送的引數是有長度限制的,而post麼有。
(7)對引數的資料型別,get只接受ascii字元,而post沒有限制。
(8)get比post更不安全,因為引數直接暴露在url上,所以不能用來傳遞敏感資訊。
(9)get引數通過url傳遞,post放在request body中。
**
get和post與服務端的互動方式
在網上看了不少關於get和post的文章,看到博主這個,現在手錄下來。一 b s結構,瀏覽器端到伺服器端通訊依賴http協議 互動過程 2 瀏覽器根據ip和伺服器建立連線,port確定和那個應用進行互動,因為ip主機上面有 很多應用程式。3 瀏覽器端傳送請求以及引數到伺服器端,就是url 同一資源定...
http伺服器與ftp伺服器互動邏輯
http伺服器與ftp伺服器互動邏輯 解決辦法 通過在http伺服器與ftp伺服器之間搭建redis來作為互動介質,及時互動ftp伺服器的狀態,使http伺服器對新加入的驗證請求做限制,進而達到我們的目的 操作流程 在ftp伺服器上,編寫shell指令碼用於獲取ftp伺服器各個引數狀態並存入redi...
app 與伺服器互動 token
1.產生原因 cookie session 的實現方式 cookie 的實現方式是瀏覽器本身支援伺服器端向瀏覽器寫入鍵值對資料,當然客戶端可以禁止伺服器向客戶端寫入 cookie。session 的實現方式是根據客戶端的請求來找出當前客戶端在伺服器端的存放資訊,有兩種實現方式 1.使用 cookie...