什麼是Http協議?
http協議(HyperText Transfer Protocol)全稱就是英文全翻譯:超文本傳輸協議,處於OSI7層協議的最頂層------應用層。是對應用程序的通信協議,是客戶端(app瀏覽器和web瀏覽器)和服務器之間的橋樑,也是現在互聯網開發中最通用的協議。
Http協議主要有什麼?
包括Http協議主要變現形式是以報文的格式來表現。主要有請求報文和響應報文。
1、Http請求和響應
兩者的結構大體相同都有:
- 狀態行:主要有請求方式,資源路徑URL,狀態碼,遠程地址,引薦信息(如果不指定代理器默認)
- 請求頭:接收文本方式,接收編碼類別,接收語言,Host(翻譯過來是主人。這個主要是用來實現負載均衡顯示主域名地址),Cookie
3.請求正文:請求數據。
請求數據主要兩種形式一種是GETt方式 在url後加參數傳到後臺 例如:http://ss.cn?os=****
另一種是POST 方式,主要有ajax異步推送和form表單提交將參數整體提交到後臺。例如:
4.響應頭:和請求頭大體一致 但是有http協議版本號和 返回狀態碼
5.響應正文:就是返回的具體內容。例如下:
2、響應狀態碼
1XX | 指示: 表示Http請求已經接受,在繼續處理請求; 100 客戶端必須繼續發送請求 |
2XX | 成功:表示Http請求已經被成功接受、理解、接收;200表示完成,202 接收和處理但是處理未完成 |
3XX | 重定向:表示Http請求重定向到其他目錄 需要進一步補充;300 請求的資源可在多處得到 |
4XX | 客戶端錯誤:請求有語法錯誤或是找不到路徑 ; 404 無法找到路徑 , 401 未授權 |
5XX | 服務端錯誤: 服務器故障或是繁忙; 500 內部服務器錯誤(服務器關閉,太忙,應用程序無效,不允許請求)502網管錯誤 504網管超時 |
3、請求方法:
HEAD--------------------------------------------------------獲取報文首部
PUT ---------------------------------------------------------傳輸文件
GET ----------------------------------------------------------獲取資源
DELETE -----------------------------------------------------刪除文件
OPTIONS ---------------------------------------------------詢問支持
TRACE -------------------------------------------------------追蹤路徑
CONNECT --------------------------------------------------要求用隧道協議鏈接代理
下面是最通常用到的Get方法和PUT方法的比較 這裏引用W3school的對比列表: