HTTP協議(一)

來源:互聯網
上載者:User

標籤:bsp   title   urlencode   hang   格式   img   串連   pos   alt   

在http協議使用情境上我們最熟悉的可能就是瀏覽器了,作為本系列第一篇,就講一個問題  ”瀏覽器怎麼串連上伺服器並擷取網頁內容的“ ;

首先 瀏覽器怎麼串連上伺服器的?

如果對OSI七層模型或者TCP/IP四層模型不熟悉可能會對接下來的內容有點懵,不著急,看這裡:

http://www.cnblogs.com/codeAB/p/6269419.html

假設你已經看過我寫的那篇文章了,接下來就聽我徐徐道來;

瀏覽器(以下稱 B)要擷取伺服器(以下稱 S)的內容(網頁),兩者必須通過互連網建立起串連,建立串連的必要要知道雙方的 ip地址;

B是怎麼擷取到 S的ip地址的呢?  就是使用者輸入的網域名稱,瀏覽器通過網域名稱解析到ip地址;

至於兩者怎麼建立串連的,看過我那篇文章也就知道了,這就不說了;

建立串連後,S會把B的請求交給本地綁定80連接埠(也可能是其他連接埠)的程式(比如這裡就是Apache)來處理這個請求;

既然你B要擷取S上的一個頁面,你在發送請求的時候就應該告訴S,然後S返回給你資料的時候也應該附帶一些資訊,比如頁面有多大,瀏覽器才知道接下來怎麼處理;

那麼想一下,B方想帶什麼資料就帶什麼資料,S方返回的資料也是按心情的,就會出現你發送的資料對方不認識,所以雙方就需要一個約定一個協議,http協議就誕生了;

現在無論是B方還是S方發送資料都必須遵守一個格式,這樣雙方就可以愉快的溝通了;

在瀏覽器中開啟部落格園,抓一下請求資訊來看一下有些啥;

 先別興奮,這個地方看到的都是要求標頭資訊,並不是一個完整的HTTP請求,看看一個完整的請求長什麼樣;

1 POST /path/page.php  HTTP/1.12 Host: www.xxxxx.com3 Content-Type:application/x-www/form-urlencoded4 Content-length:175 6 username=zhangsan

 

要求標頭包含三個部分,請求行。要求標頭資訊。請求主題資訊;

看上面代碼,第一行就是請求行,每一行以 /r/n結尾;

請求行包含三個部分, 請求方式(GET,POST,PUT,DELETE...) ,請求路徑  , 採用的協議/版本(http)

2~4為要求標頭,可以包含很多,第6行是請求主體資訊,要求標頭和請求主體要空一行

 

HTTP協議(一)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.