HTTP協議筆記

一. 概念

1. HTTP協議

HTTP協議是Hyper Text Transfer Protocol(超文本傳輸協議)的縮寫,用於從萬維網(WWW)服務器傳輸超文本到本地瀏覽器的傳送協議,是互聯網上應用最廣泛的一種網絡協議

HTTP是一個客戶端和服務器端(web服務器)請求和應答的標準基於TCP/IP通信協議來傳遞數據屬於應用層的面向對象的協議(C/S架構),默認端口號是80

HTTPS是基於TLS或SSL協議,默認端口號是443

一次HTTP請求看作是一個事務,流程分四步:建立連接------發送請求------服務器響應------關閉連接。

2. 超文本

超文本文件就是採用HTML格式的文字,通過瀏覽器的解釋,最後將圖片、文字、連接、動畫等顯示在屏幕上,也就是包含多種文本。

二. 消息結構

1. request請求消息格式:請求行、請求頭部(header)、空行、請求數據,eg:

請求行:請求方法 空格 URL 空格 協議版本號

請求頭:是請求報文特有的,它們爲服務器提供了一些額外信息,比如客戶端希望接收什麼類型的數據,如Accept頭部。

2. response響應消息格式:狀態行、消息報頭、空行、響應正文,eg:

狀態行:協議版本號 空格 狀態碼 空格 狀態描述

三. HTTP兩種常用方法: GET,POST

1. GET:一般用於獲取、查詢資源信息

  • get 提交的參數拼在 URL 之後,以 ? 分割,多個參數之間用 & 分割
  • get 提交的參數大小有限制,因爲瀏覽器對 URL 的長度有限制,不同瀏覽器限制範圍不同(HTTP 1.1中協議本身是不對 URI 長度做限制的)
  • get 方式提交數據會有安全問題,因爲直接拼接在 URL 上清晰可見

2. POST:一般用於更新資源信息

四. 常見響應狀態碼

200 表示響應成功,2開頭的都和成功有關

302 表示請求的重定向,3開頭的都和重定向有關

404 表示資源未找到,4開頭的都是客戶端的錯誤

500 表示服務器內部錯誤,5開頭的都是服務器的錯誤



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章