1.什麼是協定?
協定:是通信雙方應該遵守的一個共同的規則。隻有雙方按照指定的規則,一方發送資料,另外一方才能接受到資料。
2.什麼是http協定?
在網際網路中,我們通過浏覽器通路其他的網站,預設都會使用http協定。用戶端和伺服器之間進行互動的規則。
html : 超文本 标記語言
http的特點:
1、http協定是基于TCP協定,基于應用層
2、預設端口是80(如果端口号是80,可以省略不寫)
http://www.baidu.com:80
http://www.baidu.com
3、http協定永遠是用戶端(浏覽器或者手機等)發送請求,伺服器回送響應

用戶端通路服務端稱為用戶端的請求,伺服器給浏覽器回送資料稱為伺服器的響應。
3.
4.http協定中請求格式
http規定:請求的資料必須分成三部分:
1、 請求行
2、 請求頭
3、 請求體
Get方式:(參數在請求行内)
Post方式:(參數在請求行内)
請求行:分成3部分:
用戶端請求伺服器時使用的請求方式:GET、POST
用戶端請求伺服器的資源路徑:/request 1
請求時用戶端使用的協定:http/1.1
明顯缺陷:浏覽器和伺服器建立連接配接後,每次隻能處理一次請求。
為了克服上述1.0的缺陷,http1.1 應運而生。它支援持久連接配接,也就是說在一個TCP連接配接上可以傳送多個http請求和響應,進而減少建立和關閉連接配接的消耗延時。
請求頭:
它是有key和value組成的資料,key和value之間必須使用冒号隔開。一個key可以對應多個value值。
Host:用戶端請求的伺服器的主機的ip
User-Agent:表示的是用戶端在使用什麼浏覽器通路伺服器(在學習下載下傳時使用)
Accept:告訴伺服器,用戶端可以接受的資料類型
Cookie: 是伺服器發給浏覽器的資料,在本次通路的時候浏覽器會自動帶給伺服器。如果使用者的浏覽器是第一次通路某個網站,在請求頭中是不會有這個Cookie,隻有後續的通路才會有。
Cache-Control:控制緩存的。
根據使用者的請求次數,或者是用戶端的設定,那麼每次請求伺服器的時候,可能攜帶的頭都不一樣。
Accept: text/html,image/*
Accept-Charset: ISO-8859-1
Accept-Encoding: gzip
Accept-Language:zh-cn
Host: www.itcast.com:80
If-Modified-Since: Tue, 11 Jul 2000 18:23:51 GMT 它記錄的是目前網站的最後一次修改時間
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0) 它使用下載下傳
Connection: close/Keep-Alive
Date: Tue, 11 Jul 2000 18:23:51 GMT
注意:在請求中,隻有post請求方式,才會有請求體;get方式的請求,請求資料中是沒有請求體的。
5. HTTP協定中的響應格式(伺服器 --》 浏覽器)
http協定中在定義響應格式:分成3部分:
1、 響應行
2、 響應頭
3、 響應體
響應行:分成三部分:
伺服器給用戶端響應資料使用的協定:http/1.1
200 狀态碼
OK 狀态資訊
響應行中的狀态碼:
1xx 表示用戶端請求伺服器的時候資料不完整
2xx 表示伺服器響應資料成功 200
3xx 表示的是重定向
302:請求重定向。 A找B借錢,B說我沒有,但是我告訴你找C借錢,A就會自動的找C
304:伺服器告訴用戶端,通路的資源沒有修改,請浏覽器去自己的緩存中找資料。
4xx 伺服器沒有這個資源。 404 找不到資源
5xx 伺服器内部異常了。
響應頭:
Server:apache tomcat
Content-Encoding: gzip
Content-Length: 80
Content-Language: zh-cn
Content-Type: text/html; charset=GB2312
Last-Modified: Tue, 11 Jul 2000 18:23:51 GMT 告訴用戶端這次請求的資源在伺服器中最後一次的修改時間
Refresh: 1;url=http://www.it315.org 定時重新整理
Content-Disposition: attachment; filename=aaa.zip
Expires: -1
Cache-Control: no-cache 告訴浏覽器不允許緩存目前的資源資料
Pragma: no-cache
Connection: close (關閉)/Keep-Alive(保持連接配接)
響應體:浏覽器需要顯示的資料
http協定:超文本傳輸協定。http協定它是基于請求和響應而設計的協定。
請求和響應模型:一次請求,必然會有一次響應。它們是一一對應的。沒有請求,不會有響應。