計算機網路 Http請求與響應

2021-10-09 11:05:44 字數 1609 閱讀 6143

1.3 請求頭

1.4 請求資料

2. 響應

2.3 響應頭

2.4 響應正文

3. 參考鏈結

4. 擴充套件:http請求與響應全過程

get方法要求伺服器將url定位的資源放在響應報文的資料部分,傳送給客戶端。請求資料以位址的形式表現在請求行,? 後是請求的引數,&拼接引數,傳遞引數長度受瀏覽器限制

post方法將請求引數封裝在http請求資料中,以名稱/值的形式出現,可以傳輸大量資料,這樣post方式對傳送的資料大小沒有限制,而且也不會顯示在url中。post方式請求行中不包含資料字串,這些資料儲存在「請求資料」部分,各資料之間也是使用『&』符號隔開。

比如:post的語義是在下建立一篇帖子,http響應中應包含帖子的建立狀態以及帖子的uri。兩次相同的post請求會在伺服器端建立兩份資源,它們具有不同的uri。所以,post方法不具備冪等性。

put所對應的uri是要建立或更新的資源本身。比如:put的語義是建立或更新id為4231的帖子。對同一uri進行多次put的***和一次put是相同的。因此,put方法具有冪等性。

post方法和put方法請求最根本的區別是請求uri(request-uri)的含義不同。post請求裡的uri 指示乙個能處理請求實體的資源(譯註:此資源可能是一段程式,如jsp 裡的servlet) 。此資源可能是乙個資料接收過程,乙個閘道器(gateway,注:閘道器和**的區別是:閘道器可以進行協議轉換,而**不能,只是起**的作用,比如快取伺服器其實就是乙個**),或者乙個單獨接收注釋的實體。對比而言,put方法請求裡的uri標識請求裡封裝的實體一一使用者**知道uri 意指什麼,並且伺服器不能把此請求應用於其它資源(resource)。如果伺服器期望請求被應用於乙個不同的uri,那麼它必須傳送301(永久移動)響應;使用者**可以自己決定是否重定向請求。乙個單獨的資源可能會被許多不同的uri指定。如:一篇文章可能會有乙個uri指定當前版本,而這個uri區別於這篇文章其它特殊版本的uri。這種情況下,對乙個通用uri的put請求可能會導致其資源的其它uri請求被源伺服器重定義。http/1.1沒有定義put方法對源伺服器的狀態影響。

常用的有http/1.0和http/1.1

計算機網路 HTTP

引子 前兩天看了 http 和 計算機網路 的第5章 運輸層 為了準確無誤地將資料送達目標處,tcp協議採用了 三次握手 three way handshaking 策略。三次握手 three way handshake 或三次聯絡。廣為流傳的譯名 三次 three way 並不準確。這裡的三次是指...

計算機網路 http

http,超文字傳輸協議hypertext transfer protocol。基於tcp,無狀態。http預設使用持續連線,但是也可以配置為使用非持續連線。持續連線就是指傳送請求,接收響應後,並不直接關閉tcp連線,再有下個http請求,還用這個tcp連線傳送 非持續連線就是傳送請求,接收響應後,...

計算機網路 HTTP

http的報文結構 http有兩類報文 請求報文和響應報文。它們的報文結構由三部分組成,分別為開始行 首部行和實體主體。開始行 用於區分是請求報文還是響應報文。首部行 用來說明瀏覽器 伺服器和報文主體的一些資訊 實體主體 在請求報文中一般都不用這個字段,響應報文中也可能沒有這個字段 在請求報文中,開...