HTTP 協議簡析

2021-07-25 03:57:28 字數 2562 閱讀 9702

http是乙個屬於應用層的面向兌現的協議,由於其簡捷、快速的方式,適用於分布式超**資訊系統。它與2023年提出。目前使用的版本是http/1.1版本。

http協議

協議是指兩台計算機之間進行通訊必須共同遵守的規定或者規則。超文字傳輸協議是一種通訊協議,它允許將超文字標記語言文件從web伺服器傳送到客戶端的瀏覽器。

特點

支援客戶端/伺服器模式(c/s)。

靈活:http允許傳輸任意型別的資料物件,正在傳輸的型別由content-type加以標記。

無連線:無連線的含義是每次連線只能處理乙個請求。伺服器處理完客戶的請求後,並受到客戶的應答,即斷開連線。

web瀏覽器、伺服器、**伺服器

客戶端與服務端通過http協議建立連線。

連線建立之後,傳送request請求,請求格式為:url,協議的版本號,客戶機資訊等內容。

伺服器受到請求之後,作為響應,返回客戶端的請求內容。

客戶端瀏覽器收到服務的資訊後,解析內容,顯示在瀏覽器介面上。

我們的請求又可能不是通過客戶端直接和服務端連線的,中間可能會加乙個**的伺服器,客戶端先和**伺服器連線,之後在和目標伺服器連線,這樣可以隱藏客戶端的ip,這種方式在爬蟲中比較常用,它可以提高訪問的速度,****的限制,隱藏客戶端的資訊。請求過程如下圖所示:

http**伺服器

簡單說,http**伺服器就是網路資訊的中轉站,**伺服器具有快取的功能,有很大的儲存空間。對於客戶端來說,**伺服器相當於服務端,對於都服務端來說,**伺服器就是要乙個客戶端。

http url組成解析

url描述的是網路上的資源,任何資訊都可以通過url找到它。http(超文字傳輸協議)是乙個基於請求與響應模式的、無狀態的、應用層的協議,常基於tcp的連線方式,http1.1版本中給出一種持續連線的機制,絕大多數的web開發,都是構建在http協議之上的web應用。

格式如下:

scheme 指定底層使用的協議(http ,https ,ftp)

host 伺服器的ip位址,網域名稱 ,上例中的 www.test.con

port 埠號 一般預設是80 可以不寫 ,若是其他埠,如8080 必須要書寫.

path 訪問的資源路徑 /search/yuluo

query-string 傳送給http的資料 id=1234&name=zhangsan

http訊息結構

當時用get方法的時候,body是空的

get:

host:

accept : 瀏覽器可以接受的**型別 / 任意型別

accept-encoding: 申明自己接收的編碼方法

accept-language: 申明自己接收的語言

cache-control:response-request遵循的快取機制

cookie: 將cookie的值傳送給伺服器

referer:

user-agent:客戶端使用的系統和瀏覽器的版本

post 請求

post:

host:

accept:

accept-encoding:

accept-language:

cache-control:

cookie:

referer:

user-agent:

body :

get和post請求的區別

get 一般用於獲取/查詢資源資訊,請求引數攜帶在url中

post 一般用於更新資源資訊 ,url中無引數資訊

請求方法

常用狀態碼

響應訊息

客戶端向伺服器傳送乙個請求,伺服器以乙個狀態行作為響應,響應的內容包括:訊息協議的版本、成功或者錯誤的編碼、實體元資訊以及必要的實體內容。包括:

響應報頭

常用的響應報頭

http無狀態問題

通過cookie 儲存狀態資訊 。每次請求的時候攜帶cookie的資訊,服務端就可以知道你來自同乙個瀏覽器。

通過session 儲存狀態資訊。session是一種伺服器端的機制。

cookie和session的區別

cookie狀態儲存在客戶端,session狀態儲存在伺服器端

cookie是伺服器端在客戶端機上儲存的一小段文字,並隨每次請求一起傳送到服務端

session是針對每乙個使用者,變數值儲存在伺服器中

從安全角度講,session的安全性更好一些

HTTP協議 簡析

http 超文字傳輸協議 hypertext transfer protocol 是網際網路上應用最為廣泛的一種網路協議,是所有的www檔案都必須遵守的標準。http協議是乙個基於tcp協議,屬於應用層的,物件導向的,無狀態的,無連線的協議。其簡單快捷,客戶向伺服器請求服務時,只需要傳送請求方法和路...

簡析HTTP協議(一)

首先說說協議 協議就是要通訊的雙方制定的,都需要用到的規定。比如南方人和北方人,各說各的家鄉話,雙方都聽不懂,無法交流,但如果他們約定好都說普通話,那交流就不成問題了。說普通話 就是這兩個人制定的協議。百科裡的說法 協議是用來描述程序之間資訊交換資料時的規則術語。其實就是網路上的各台計算機之間進行通...

http協議簡析(一)

http hype text transfer protocol,超文字傳輸協議,超文字 html 在網路間 電腦與電腦之間 傳輸過程中所遵循的一些規則。兩台電腦之間要實現資料傳輸的條件 1.兩台電腦必須要互聯 通過網線 tcp ip 2.資料的傳輸要遵循http協議。b s結構的系統 http協議...