http學習筆記
1. 什么是Http?
Hypertext Transfer Protocol-超文本傳輸協(xié)議
HTTP是一個應(yīng)用層的協(xié)議
2. Http的歷史版本
HTTP/0.9;HTTP/1.0;HTTP/1.1(文檔)枷踏;HTTP/2.0(Http2.0的文檔)
3. TCP/IP協(xié)議簇中與Http密不可分的IP Tcp DNS
下圖說明了這幾個協(xié)議所處的網(wǎng)絡(luò)分層中的那一層:
首先IP是一種協(xié)議框咙,就是來保證數(shù)據(jù)的確實傳到了對方加派。IP地址是網(wǎng)際分配的一個地址银舱。
TCP是用來保證可靠性傳輸?shù)牡勒担袀€對應(yīng)的不可靠傳輸UDP因苹。
DNS(Domain Name System)服務(wù)與http協(xié)議一樣位于應(yīng)用層鞭呕。提供了域名與ip之間的解析蛤育。
下面一個圖說明了他們之間的關(guān)系:
4. URI與URL的區(qū)別
URL: Uniform Resource Locator-統(tǒng)一資源定位符,例如:http://www.reibang.com就是URL
URI: Uniform Resource Identifier-統(tǒng)一資源標識符, 文檔-RF2396葫松。當然瓦糕,HTTP協(xié)議肯定是以http開始的,除此之外腋么,還有file咕娄、ftp、telnet等珊擂。
URI的格式:協(xié)議名+登錄信息+服務(wù)器地址+端口號+文件路徑+查詢字符串+片段標示符
例如:http://+user:pass+www.example.jp:8080/+dir/index.html+?id=1+#ch1
5. http請求相應(yīng)報文
請求行:包括URI和http版本號
GET請求方法:其中http支持的方法除了常用GET圣勒、POST、PUT摧扇、DELETE之外圣贸,還有HEAD OPTIONS TRACE CONNECT
狀態(tài)行:響應(yīng)結(jié)果的狀態(tài)碼,原因短語和HTTP版本扛稽。
這里有大家經(jīng)常遇見的:200-成功吁峻,404-找不到網(wǎng)頁,500-服務(wù)器錯誤等庇绽。
MIME:Multipurpose Internet Mail Extensions,多用途英特網(wǎng)郵件擴展锡搜。郵件是可以發(fā)送圖片文字等多種數(shù)據(jù)類型。http協(xié)議中也采納了這種多數(shù)據(jù)對象集合的方法瞧掺,來容納多分不同的數(shù)據(jù)類型耕餐。查看文檔詳情,下面是幾個例子:
multipart/form-data:表單數(shù)據(jù)與文件上傳
text/plain:文本類型(Content-type的默認值辟狈,注:content-type用來說明http的數(shù)據(jù)媒體格式肠缔,下片會詳細介紹)