1.什麼是HTTP
HTTP(超文本傳輸協議)是一個簡單的請求-響應協議,它通常運行在TCP之上。
2 .兩個時代
- HTTP/1.0:客戶端可以與web服務器連接後,只能獲得一個web資源,斷開連接
- HTTP/1.1:客戶端可以與web服務器連接後,可以獲得多個web資源。
3.Http請求
- 客戶端—發請求(Request)—服務器
百度:
Request URL:https://www.baidu.com/ 請求地址
Request Method:GET get方法/post方法
Status Code:200 OK 狀態碼:200
Remote(遠程) Address:14.215.177.39:443
Accept:text/html
Accept-Encoding:gzip, deflate, br
Accept-Language:zh-CN,zh;q=0.9 語言
Cache-Control:max-age=0
Connection:keep-alive
3.1請求行
- 請求行中的請求方式:GET
- 請求方式:Get,Post,HEAD,DELETE,PUT,TRACT…
- get:請求能夠攜帶的參數比較少,大小有限制,會在瀏覽器的URL地址欄顯示數據內容,不安全,但高效
- post:請求能夠攜帶的參數沒有限制,大小沒有限制,不會在瀏覽器的URL地址欄顯示數據內容,安全,但不高效。
3.2消息頭
Accept:告訴瀏覽器,它所支持的數據類型
Accept-Encoding:支持哪種編碼格式 GBK UTF-8 GB2312 ISO8859-1
Accept-Language:告訴瀏覽器,它的語言環境
Cache-Control:緩存控制
Connection:告訴瀏覽器,請求完成是斷開還是保持連接
HOST:主機..../.
4.Http響應
服務器—響應-----客戶端
百度:
Cache-Control:private 緩存控制
Connection:Keep-Alive 連接
Content-Encoding:gzip 編碼
Content-Type:text/html 類型
4.1響應體
Accept:告訴瀏覽器,它所支持的數據類型
Accept-Encoding:支持哪種編碼格式 GBK UTF-8 GB2312 ISO8859-1
Accept-Language:告訴瀏覽器,它的語言環境
Cache-Control:緩存控制
Connection:告訴瀏覽器,請求完成是斷開還是保持連接
HOST:主機..../.
Refresh:告訴客戶端,多久刷新一次;
Location:讓網頁重新定位;
4.2響應狀態碼
- 200:請求響應成功 200
- 3xx:請求重定向
- 重定向:你重新到我給你新位置去;
- 4xx:找不到資源 404
- 資源不存在;
- 5xx:服務器代碼錯誤 500 502:網關錯誤