http協議: 對瀏覽器客戶端 和 伺服器端 之間資料傳輸的格式規範
http1.0:當前瀏覽器客戶端與伺服器端建立連線之後,
只能傳送一次請求,一次請求之後連線關閉。
http1.1:當前瀏覽器客戶端與伺服器端建立連線之後,
可以在一次連線中傳送多次請求。(基本都使用1.1)
常見的請求方式: get 、 post、 head、 trace、 put、 connect 、delete
常用的請求方式: get 和 post
表單提交:
action="提交位址"
method="get/post">
請求(瀏覽器-》伺服器)
connection: keep-alive
響應(伺服器-》瀏覽器)
!
三部分組成:請求行,請求頭,實體內容
host: localhost:8080
--請求頭(多個key-value物件)
user-agent: mozilla/5.0 (windows nt 6.1; wow64; rv:35.0) gecko/20100101 firefox/35.0
accept-language: zh-cn,en-us;q=0.8,zh;q=0.5,en;q=0.3
accept-encoding: gzip, deflate
connection: keep-alive
--乙個空行
name=eric&password=123456
--(可選)實體內容
accept:
text/html
,image/*--
瀏覽器接受的資料型別
accept
-charset:
iso-
8859-1
--瀏覽器接受的編碼格式
accept
-encoding:
gzip
,compress--
瀏覽器接受的資料壓縮格式
accept
-language:en-
us,zh-
--瀏覽器接受的語言
host:
www.
it315
.org:80--
(必須的)當前請求訪問的目標位址(主機:埠)if-
modified
-since:
tue,
11jul
2000
18:23:51
gmt-
-瀏覽器最後的快取時間
當前請求來自於**
user
-agent:
mozilla/4.0
(compatible;
msie5.
5;windowsnt5
.0)--
瀏覽器型別
cookie:name=eric--
瀏覽器儲存的cookie資訊
connection:
close/keep
-alive--
瀏覽器跟伺服器連線狀態。close:
連線關閉
keep
-alive:儲存連線。
date:
tue,
11jul
2000
18:23:51
gmt-
-請求發出的時間
只有post提交的引數會放到實體內容中
後台接受前台http請求封裝成物件。
那如何提取其中的資訊呢?
httpservletrequest物件作用是用於獲取請求資料。
核心的api:
請求行:
request.getmethod(); 請求方式
request.getrequeturi() / request.getrequeturl()
請求資源
request.getprotocol() 請求http協議版本
請求頭:
request.getheader("名稱") 根據請求頭獲取請求值
request.getheadernames() 獲取所有的請求頭名稱
實體內容:
request.getinputstream() 獲取實體內容資料
http協議內容
http協議 對瀏覽器客戶端 和 伺服器端 之間資料傳輸的格式規範 http1.0 當前瀏覽器客戶端與伺服器端建立連線之後,只能傳送一次請求,一次請求之後連線關閉。http1.1 當前瀏覽器客戶端與伺服器端建立連線之後,可以在一次連線中傳送多次請求。基本都使用1.1 常見的請求方式 get post...
HTTP協議內容1
一 請求協議 瀏覽器 server 格式 1 請求首行 請求方式 請求路徑 協議和版本 例如 get index.html http 1.1 2 請求頭資訊 請求頭名稱 請求頭內容,即為key value格式 例如 host localhos http是無狀態的,所以才會有cookie cookie...
http協議與內容壓縮
為了加快網路上的傳輸的速度,可以將伺服器傳輸的內容進行壓縮,伺服器的壓縮方式有gzip壓縮 deflate壓縮 compress壓縮 content length 壓縮後的長度 如何啟動壓縮功能 1,將apache中的deflate模組開啟 2,在conf檔案中,寫如下 deflatecompres...