網路協議基礎知識

2022-07-23 19:15:08 字數 2716 閱讀 1909

http 請求流程

瀏覽器通過網域名稱解析伺服器(dns)獲取ip位址

瀏覽器先向 ip 發起請求,並獲取相應

瀏覽器每獲取乙個響應就對展示出的結果進行新增(載入),js,css 等內容會修改頁面的內容,js也可以重新傳送請求,獲取響應

從獲取第乙個響應並在瀏覽器中展示,直到最終獲取全部響應,並在展示的結果中新增內容或修改————這個過程叫做瀏覽器的渲染

五層網路模型

http協議結構圖

網路模型對應關係

http、rtsp、ftp -------> 應用層

tcp、udp -------> 傳輸層

ip -------> 網路層

資料鏈路 -------> 資料鏈路層

物理介質 -------> 物理層

url 位址格式

格式說明: scheme://host[:port]/path/…/[?query-string][#anchor]

scheme:協議(例如:http, https, ftp)

port:伺服器的埠(如果是走協議預設埠,預設埠80)

path:訪問資源的路徑

query-string:引數,傳送給 http 伺服器的資料

anchor:錨(跳轉到網頁的指定錨點位置)

http 請求

根據 http 標準,http 請求可以使用多種請求方法。

http1.0 定義了三種請求方法: get, post 和 head 方法。

http1.1 新增了五種請求方法:options, put, delete, trace 和 connect 方法。

請求方式

描述get

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

head

類似於 get 請求,只不過返回的響應中沒有具體的內容,用於獲取報頭

post

向指定資源提交資料進行處理請求(例如提交表單或者上傳檔案)。資料被包含在請求體中。post 請求可能會導致新的資源的建立和/或已有資源的修改。

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

delete

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

connect

http/1.1 協議中預留給能夠將連線改為管道方式的**伺服器。

options

允許客戶端檢視伺服器的效能。

trace

回顯伺服器收到的請求,主要用於測試或診斷。

請求頭作用

cookie

cookie

user-agent

瀏覽器名稱

referer

頁面跳轉處

host

主機和埠號

connection

鏈結型別

upgrade-insecure-requests

公升級為 https 請求

accept

傳輸檔案型別

accept-encoding

檔案編譯碼格式

ajax 請求

http 響應

http響應也由四個部分組成,分別是:狀態行、訊息報頭、空行(回車符 + 換行符)和響應正文。 

響應頭

作用location

這個頭配合 302 狀態碼使用,告訴使用者端找誰。

set-cookie

設定和頁面關聯的 cookie

content-type

伺服器通過這個頭,回送資料的型別

server

伺服器通過這個頭,告訴瀏覽器伺服器的型別

content-length

伺服器通過這個頭,告訴瀏覽器回送資料的長度

connection

伺服器通過這個頭,響應完是保持鏈結還是關閉鏈結

當瀏覽者訪問乙個網頁時,瀏覽者的瀏覽器會向網頁所在伺服器發出請求。當瀏覽器接收並顯示網頁前,此網頁所在的伺服器會返回乙個包含 http 狀態碼的資訊頭(server header)用以響應瀏覽器的請求。

http 狀態碼的英文為 http status code。

http 狀態碼由三個十進位制數字組成,第乙個十進位制數字定義了狀態碼的型別,後兩個數字沒有分類的作用。http 狀態碼共分為 5 種型別

分類

分類描述

1**資訊,伺服器收到請求,需要請求者繼續執行操作

2**成功,操作被成功接收並處理

3**重定向,需要進一步的操作以完成請求

4**客戶端錯誤,請求包含語法錯誤或無法完成請求

5**伺服器錯誤,伺服器在處理請求的過程中發生了錯誤

- http + ssl (安全套接字層),即帶有安全套接字層的超本文傳輸協議

- 預設埠號:443

在傳輸過程中對資料進行加密,防止中間路由器、交換機等中間的路由裝置對資料進行篡改。

http 因為不需要對資料進行加密所以效能更高,但是安全性差。

https 雖然安全性高,但是因為瀏覽器和伺服器端需要對資料進行加解密,所以占用伺服器資源。

網路協議基礎知識

應用層 傳輸層 埠 網路層 路由 ip 鏈路層 mac 網橋 socket 套接字 通訊方式 一 多對一關係 ip 埠 協議 websocket web層面的socket socket底層也是tcp協議 socket 本質是程式設計介面 api 對 tcp ip 的封裝,tcp ip 也要提供可供程...

網路協議基礎知識(一)

現在我們每天都在上網,網際網路已經佔據了我們生活的大部分。網際網路到底是如何實現的?網際網路的核心是一系列的網際網路協議,了解了網際網路協議才能更進一步了解網際網路。1.標準的osi七層模型 除了osi七層模型,常見的還有tcp ip 4層協議,以及tcp ip 5層協議。越靠下的層,越靠近硬體 越...

網路基礎知識(HTTP協議)五

1.http請求格式 抓包的reqeust結構 a.請求行get為請求型別,mix 76.html?name kelvin password 123456為要訪問的資源,http 1.1是協議版本 b.請求頭 從第二行起為請求頭部,host指出請求的目的地 主機網域名稱 user agent是客戶端...