天天看點

http協定的相關知識

    因為如今的工作設計的Web開發,是以了解了一下Http協定。

在閱讀了這篇文章HTTP協定具體解釋(真的非常經典)後,總結了相關經常使用知識并列在此處以友善以後的查詢。

HTTP協定的主要特點可概括例如以下:

1.支援客戶/server模式。

2.簡單高速:客戶向server請求服務時,僅僅需傳送請求方法和路徑。請求方法經常使用的有GET、HEAD、POST。每種方法規定了客戶與server聯系的類型不同。

因為HTTP協定簡單。使得HTTPserver的程式規模小,因而通信速度非常快。

3.靈活:HTTP同意傳輸随意類型的資料對象。正在傳輸的類型由Content-Type加以标記。

4.無連接配接:無連接配接的含義是限制每次連接配接僅僅處理一個請求。

server處理完客戶的請求,并收到客戶的應答後,即斷開連接配接。採用這樣的方式能夠節省傳輸時間。

5.無狀态:HTTP協定是無狀态協定。無狀态是指協定對于事務處理沒有記憶能力。缺少狀态意味着假設興許處理須要前面的資訊,則它必須重傳。這樣可能導緻每次連接配接傳送的資料量增大。還有一方面,在server不須要先前資訊時它的應答就較快。

HTTP URL (URL是一種特殊類型的URI,包括了用于查找某個資源的足夠的資訊)的格式例如以下:

http://host[":"port][abs_path]      

http表示要通過HTTP協定來定位網絡資源;host表示合法的Internet主機域名或者IP位址;port指定一個端口号,為空則使用預設端口80;abs_path指定請求資源的URI。假設URL中沒有給出abs_path,那麼當它作為請求URI時,必須以“/”的形式給出,通常這個工作浏覽器自己主動幫我們完畢。

eg:

1、輸入:www.guet.edu.cn

浏覽器自己主動轉換成:http://www.guet.edu.cn/

2、http:192.168.0.116:8080/index.jsp

User-Agent

我們上網登陸論壇的時候,往往會看到一些歡迎資訊,當中列出了你的作業系統的名稱和版本号,你所使用的浏覽器的名稱和版本号。這往往讓非常多人感到非常奇妙,實際上,server應用程式就是從User-Agent這個請求報頭域中擷取到這些資訊。

User-Agent請求報頭域同意client将它的作業系統、浏覽器和其他屬性告訴server。

隻是,這個報頭域沒必要的,假設我們自己編寫一個浏覽器,不使用User-Agent請求報頭域,那麼server端就無法得知我們的資訊了。

在Android中擷取系統的userAgent代碼例如以下:System.getProperty("http.agent");在我的手機上列印出:

Dalvik/1.6.0 (Linux; U; Android 4.3; GT-I9300 Build/JSS15J)

上一篇: 常用标準庫
下一篇: HTTP基礎知識