HTTP原理(六) 響應(Response)

2021-08-14 11:15:56 字數 3171 閱讀 7273

response,即響應,由服務端返回給客戶端。response 可以劃分為三部分,responsestatus code、response headers、response body。

響應狀態碼,此狀態碼表示了伺服器的響應狀態,如 200 則代表伺服器正常響應,404 則代表頁面未找到,500 則代表伺服器內部發生錯誤。我們可以根據狀態碼來判斷伺服器響應狀態,如判斷狀態碼為 200,則證明成功返回資料,再進行進一步的處理,否則直接忽略。

下面列出了常見的錯誤**及錯誤原因:

狀態碼說明詳情

100繼續請求者應當繼續提出請求。伺服器已收到請求的一部分,正在等待其餘部分。

101切換協議請求者已要求伺服器切換協議,伺服器已確認並準備切換。

200成功伺服器已成功處理了請求。

201已建立請求成功並且伺服器建立了新的資源。

202已接受伺服器已接受請求,但尚未處理。

203非授權資訊伺服器已成功處理了請求,但返回的資訊可能來自另一**。

204無內容伺服器成功處理了請求,但沒有返回任何內容。

205重置內容伺服器成功處理了請求,內容被重置。

206部分內容伺服器成功處理了部分請求。

300多種選擇針對請求,伺服器可執行多種操作。

301永久移動請求的網頁已永久移動到新位置,即永久重定向。

302臨時移動請求的網頁暫時跳轉到其他頁面,即暫時重定向。

303檢視其他位置如果原來的請求是 post,重定向目標文件應該通過 get 提取。

304未修改此次請求返回的網頁未修改,繼續使用上次的資源。

305使用**請求者應該使用**訪問該網頁。

307臨時重定向請求的資源臨時從其他位置響應。

400錯誤請求伺服器無法解析該請求。

401未授權請求沒有進行身份驗證或驗證未通過。

403禁止訪問伺服器拒絕此請求。

404未找到伺服器找不到請求的網頁。

405方法禁用伺服器禁用了請求中指定的方法。

406不接受無法使用請求的內容響應請求的網頁。

407需要**授權請求者需要使用**授權。

408請求超時伺服器請求超時。

409衝突伺服器在完成請求時發生衝突。

410已刪除請求的資源已永久刪除。

411需要有效長度伺服器不接受不含有效內容長度標頭字段的請求。

412未滿足前提條件伺服器未滿足請求者在請求中設定的其中乙個前提條件。

413請求實體過大請求實體過大,超出伺服器的處理能力。

414請求 uri 過長請求**過長,伺服器無法處理。

415不支援型別請求的格式不受請求頁面的支援。

416請求範圍不符頁面無法提供請求的範圍。

417未滿足期望值伺服器未滿足期望請求標頭字段的要求。

500伺服器內部錯誤伺服器遇到錯誤,無法完成請求。

501未實現伺服器不具備完成請求的功能。

502錯誤閘道器伺服器作為閘道器或**,從上游伺服器收到無效響應。

503服務不可用伺服器目前無法使用。

504閘道器超時伺服器作為閘道器或**,但是沒有及時從上游伺服器收到請求。

505http 版本不支援伺服器不支援請求中所用的 http 協議版本。

響應頭,其中包含了伺服器對請求的應答資訊,如 content-type、server、set-cookie 等,

下面將一些常用的頭資訊說明如下:

date,標識 response 產生的時間。

last-modified,指定資源的最後修改時間。

content-encoding,指定 response 內容的編碼。

server,包含了伺服器的資訊,名稱,版本號等。

content-type,文件型別,指定了返回的資料型別是什麼,如text/html 則代表返回

表返回了。

set-cookie,設定cookie,response headers 中的 set-cookie即告訴瀏覽器需要將此內容放在 cookies 中,下次請求攜帶 cookies 請求。

expires,指定 response 的過期時間,使用它可以控制**伺服器或瀏覽器將內容更新到快取中,如果再次訪問時,直接從快取中載入,降低伺服器負載,縮短載入時間。

即響應體,最重要的當屬響應體內容了,響應的正文資料都是在響應體中,如請求乙個網頁,

它的響應體就是網頁的 html **,請求一張,它的響應體就是的二進位制資料。所以

最主要的資料都包含在響應體中了,我們做爬蟲請求網頁後要解析的內容就是解析響應體,如

圖所示:

以上便是 response 的組成部分。

http請求,響應

http請求頭 accept 用於告訴伺服器,客戶機所支援的資料型別 accept charset 用於告訴伺服器,客戶機所採用的碼表 accept encoding 用於告訴伺服器,客戶機所支援的資料壓縮格式 accept language 用於告訴伺服器,客戶機的語法環境 host 用於告訴伺服...

Http響應協議

響應首行 響應頭資訊 server apache coyote 1.1 content type text html charset utf 8 content length 777 date sat,09 feb 2012 18 30 52 gmt 空行,下面是響應正文,即html 響應協議為ht...

HTTP響應訊息

http協議 1.請求訊息 客戶端給伺服器端的資料 資料格式 1.請求行 2.請求頭 3.請求空行 4.請求體 2.伺服器端傳送給客戶端的資料 資料格式 1.響應行 1.組成 協議 版本 響應狀態碼 狀態碼描述行 2.狀態碼 伺服器告訴客戶端瀏覽器本次請求和響應的乙個狀態 1.狀態碼都是3位數字 2...