HTTP請求裏包括些什麼內容?HTTP響應裏包括些什麼內容?
1
HTTP請求包
HTTP請求包(GET?POST等請求方法)由三個部分構成,分別是:方法-URI-協議/版本,請求頭,請求正文?下面是一個HTTP協議請求包(GET)的例子:
1.GET /index.jsp HTTP/1.1
2.Accept-Language: zh-cn
3.Connection: Keep-Alive
4.Host: 192.168.0.106
5.Content-Length: 37
6.userName=new_andy&password=new_andy
請求包的第一行是方法-URI-協議/版本:
GET就是請求方法,根據HTTP標準,HTTP協議請求可以使用多種請求方法?HTTP 1.1支持七種請求方法:GET?POST?HEAD?OPTIONS?PUT?DELETE和TRACE等,常用的爲請求方法是GET和POST?
/index.jsp表示URI?URI指定了要訪問的網絡資源?HTTP/1.1是協議和協議的版本?
最後一行userName=new_andy&password=new_andy爲正文,正文與HTTP頭部有一個空行(rn)分隔?這裏需要說明的一點,其中Content-Length說明正文的長度,有的正文長度沒有在頭部說明,只是標明Transfer-Encoding: chunked?關於chunked類型的長度計算方法,見RFC 1626?
請求包的頭部還會包含許多有關客戶端環境和請求正文的有用信息,這裏不再描述?
2 HTTP協議應答包
和HTTP請求包相似,由三個部分構成,分別是:協議-狀態代碼-描述,應答頭,應答正文?下面是一個HTTP應答的例子:
1.HTTP/1.1 200 OK
2.Server: Microsoft-IIS/4.0
3.Date: Mon, 3 Jan 2005 13:13:33 GMT
4.Content-Type: text/html
5.Last-Modified: Mon, 11 Jan 2004 13:23:42 GMT
6.Content-Length: 90
7.<html>
8.<head>
9.<title>解讀HTTP包示例</title></head><body>
10.Hello WORLD!
11.</body>
12.</html>
HTTP應答包的第一行類似於HTTP協議請求的第一行,表示所用的協議是HTTP 1.1,服務器處理請求的狀態碼200?
應答頭也和請求頭一樣包含許多有用的信息,例如服務器類型?日期時間?內容類型和長度等?應答的正文就是服務器返回的HTML頁面?應答頭和正文之間也用CRLF分隔?
HTTP請求包(GET?POST等請求方法)由三個部分構成,分別是:方法-URI-協議/版本,請求頭,請求正文?下面是一個HTTP協議請求包(GET)的例子:
1.GET /index.jsp HTTP/1.1
2.Accept-Language: zh-cn
3.Connection: Keep-Alive
4.Host: 192.168.0.106
5.Content-Length: 37
6.userName=new_andy&password=new_andy
請求包的第一行是方法-URI-協議/版本:
GET就是請求方法,根據HTTP標準,HTTP協議請求可以使用多種請求方法?HTTP 1.1支持七種請求方法:GET?POST?HEAD?OPTIONS?PUT?DELETE和TRACE等,常用的爲請求方法是GET和POST?
/index.jsp表示URI?URI指定了要訪問的網絡資源?HTTP/1.1是協議和協議的版本?
最後一行userName=new_andy&password=new_andy爲正文,正文與HTTP頭部有一個空行(rn)分隔?這裏需要說明的一點,其中Content-Length說明正文的長度,有的正文長度沒有在頭部說明,只是標明Transfer-Encoding: chunked?關於chunked類型的長度計算方法,見RFC 1626?
請求包的頭部還會包含許多有關客戶端環境和請求正文的有用信息,這裏不再描述?
2 HTTP協議應答包
和HTTP請求包相似,由三個部分構成,分別是:協議-狀態代碼-描述,應答頭,應答正文?下面是一個HTTP應答的例子:
1.HTTP/1.1 200 OK
2.Server: Microsoft-IIS/4.0
3.Date: Mon, 3 Jan 2005 13:13:33 GMT
4.Content-Type: text/html
5.Last-Modified: Mon, 11 Jan 2004 13:23:42 GMT
6.Content-Length: 90
7.<html>
8.<head>
9.<title>解讀HTTP包示例</title></head><body>
10.Hello WORLD!
11.</body>
12.</html>
HTTP應答包的第一行類似於HTTP協議請求的第一行,表示所用的協議是HTTP 1.1,服務器處理請求的狀態碼200?
應答頭也和請求頭一樣包含許多有用的信息,例如服務器類型?日期時間?內容類型和長度等?應答的正文就是服務器返回的HTML頁面?應答頭和正文之間也用CRLF分隔?
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.