HTTP協議基礎

2021-09-27 03:51:12 字數 1517 閱讀 5830

uri、url和urn

http報文格式

建立乙個最簡單的web服務

第乙個版本是http/0.9,只有乙個命令get,沒有header等描述資料的資訊,伺服器傳送請求完畢就會關閉tcp連線.

第二個版本是http/1.0,增加了很多命令(post等),增加了status code和header,增加了多字符集支援,多部分傳送,許可權,快取等.

第三個版本是http/1.1,支援持久連線(長連線),增加了管道通訊(pipeline),增加host和其他一些命令.

第四個版本http2,所有資料以二進位制傳輸,同乙個鏈結裡面傳送多個請求不在需要按照順序來處理,頭資訊壓縮以及推送等提高效率的功能.

在1.1版本中乙個http連線是可以傳送多次http請求的,好處是節省建立連線的時間(建立連線需要三次握手,耗時)

syn=1表示這是乙個建立請求的資料報.

seq=x表示資料報的內容

ack=上乙個seq+1

因為網路傳輸是由延時的,如果客戶端傳送連線請求後,服務端返回建立連線成功的資料報丟失,客戶端因為有超時關閉連線的設定沒有額外開銷,但是服務端並不知道客戶端沒有收到資料報而關閉連線,因此會保留上乙個連線使用的埠號造成浪費.因此第一次握手是為了發出建立連線的請求.第二次握手是為了回應客戶端收到並接收連線,第三次握手是為了回應伺服器收到建立連線成功的訊息.

客戶端 > 伺服器 [fin] 我要關閉連線了

伺服器 >客戶端 [ack] 知道了,等我發完包先

伺服器 >客戶端 [fin] 我發完了,我也關閉連線了

客戶端 > 伺服器 [ack] 好的,知道了

uri(uniform resource identifier):統一資源標誌符,用來唯一標識網際網路上的資訊資源。包括了url和urn.

url(uniform resource locator):統一資源定位器。

urn:永久統一資源定位符。在資源移動之後還能被找到。

請求頭 :請求方法 路徑 協議

使用node.js建立乙個伺服器:

http協議基礎

定義 http協議是一種基於請求 響應模式的,無狀態協議.請求方法 http 1.1 方法 作用 get 請求獲取由request uri所所標識的資源 post 在request uri所標識的資源後附加新的資訊 head 請求獲取由request uri所所標識的資源的響應訊息報頭 put 請求...

Http協議基礎

一直忽略了一些最基礎,最本質的東西。是時候該補補了 http基於請求與響應模式的 無狀態的 應用層的協議,常基於tcp的連線方式。http允許傳輸任意型別的資料物件,http協議是無狀態協議。無狀態是指協議對於事務處理沒有記憶能力。缺少狀態意味著如果後續處理需要前面的資訊,則它必須重傳,這樣可能導致...

http協議基礎

安全牛 web安全課程筆記 明文 https只能提高傳輸層安全。而且不防中間人 無狀態 cookie cycle 請求 響應 header set cookie 伺服器發給客戶端 content length 可以用於快速鑑別不同的頁面 由伺服器發給客戶端 location 重定向使用者到另乙個頁面...