HTTP協議初步

2021-05-24 10:45:19 字數 1708 閱讀 6098

1、

簡介http(hypertext transfer protocol),中文名稱為超文字傳輸協議,工作在 osi七層體系中的應用層,屬於高層應用協議。

http協議主要用在瀏覽器和 web伺服器之間進行通訊。

http協議使用明文進行傳輸,如果需要加密傳輸,可以使用 https(注: j2me暫時不支援 )。

http協議在傳送時有很多傳送的方式,介紹如下

2、http協議版本

http協議有 3個版本,依次是 0.9、 1.0、 1.1。當前最新版本是 1.1,但是 1.0受到普遍

支援。3、

傳送方法

http協議在傳送時可以根據傳輸資料的方式不同分為多種方法,其中 http0.9支援

get、 post兩種方法, http1.0支援 7種方法, http1.1支援的方法更多。

常用的方法有 get和 post。

get方法和 post方法的區別是傳送資料時,資料所放置的位置不同。 get方法把引數放置在協議內部的請求行中。而 post方法將提交的引數放置在實體資料部分中。

更加詳細的資訊可以參考: http://dev.csdn.net/article/10/10865.shtm

4、協議格式

http協議是使用明文進行傳輸,協議主要分為三個部分:

a)請求行 /響應行:該部分只有一行,包含三個部分:請求方法

請求資源

使用的 http協議的版本。例如:

其中 get為請求方法, /index.html是請求的資源, http/1.1是指客戶端支援的 http協議的版本。

b)頭資訊:頭資訊部分主要傳輸伺服器或者客戶端的一些設定資訊,可以有任意多個,傳輸時使用「名稱:值」的形式,例如:

accept-language: zh-cn

user-agent: mozilla/4.0 (compatible; msie 5.01; windows nt 5.0)

其中 http協議裡面規定了 40多個頭資訊名稱的用途,你也可以根據需要,自己來進行定義。

頭資訊結束時需要乙個空行和實體資料部分分開。 c)

實體資料:實體資料在請求時,如果以 post方式提交時儲存引數,以 get方式請求時為空。在響應時,儲存伺服器端反饋的 html源**的資料。

附加:

accept-language: zh-cn

accept-encoding: gzip, deflate

user-agent: mozilla/4.0 (compatible; msie 5.01; windows nt 5.0)

host: localhost:8080

connection: keep-alive

這個請求是我們通過這個html**發出的:

這個請求已經超出了我們研究的範圍,我們只研究其中的第一行。其中,第乙個"get"說出了提交的方式,是以get方式提交的;中間的就是提交 給伺服器上哪個程式,前面一部分"/cgi-bin/tech/method.cgi"就是我們html的form中action的內容,而後面 的"get=get"就是html的form中,input的內容:我們發現ie已經把這個表單的內容轉換成特定格式了。在perl中,通 過$get=$env獲得以get傳送的資料。

我們再看乙個以post方式提交的表單的請求:

post=post

同樣給出html:

J2ME學習 二 HTTP協議初步

j2me學習 二 協議初步 1 簡介 中文名稱為超文字傳輸協議,工作在 osi七層體系中的應用層,屬於高層應用協議。協議主要用在瀏覽器和 web伺服器之間進行通訊。協議使用明文進行傳輸,如果需要加密傳輸,可以使用 注 j2me 暫時不支援 協議在傳送時有很多傳送的方式,介紹如下 2 協議版本 協議有...

J2ME學習 二 HTTP協議初步

j2me學習 二 http協議初步 1 簡介 http hypertext transfer protocol 中文名稱為超文字傳輸協議,工作在osi七層體系中的應用層,屬於高層應用協議。http協議主要用在瀏覽器和web伺服器之間進行通訊。http協議使用明文進行傳輸,如果需要加密傳輸,可以使用h...

HTTP協議?HTTP協議中POST GET H

head to inde x.html not supported.invalid method in request head htp 1.1 apache 1.3.12 server at www.fudan.edu.cn port 80 關於實體頭部的內容還可以有 last modified ...