http請求消息
客戶端向服務器發送請求信息,包括請求行(請求方法get/post 空格 URL http協議版本),請求頭(文件類型,請求時間等),請求體(請求的具體內容)(圖片網上百度的)
get是向服務器獲取數據,請求信息以查詢字符串的形式包含在URL中(請求行),一般不包含請求體。故這種發式不能向服務器傳送大量的信息,最多只能1024個字符。(只有請求行和請求頭,沒有請求體)
get中典型的請求頭有:
User-Agent:產生請求的瀏覽器類型。
Accept:客戶端可識別的內容類型列表。
Host:請求的主機名,允許多個域名同處一個IP地址,即虛擬主機。
post適合用於向服務器傳送數據,請求信息以字符串的形式包含在請求體中,請求行的URL中不包含該信息,可以傳送大量信息沒有限制。
post中典型的請求頭有:Content-Type和Content-Length。
http響應消息
http的響應消息:狀態行(協議版本 空格 狀態碼 空格 原因),響應頭和響應正文(圖片百度的)
響應頭包括時間Date,文件類型Content-Type,文件長度Content-Length
響應正文就是請求的HTML文件,css、js等
狀態碼
HTTP狀態碼的英文為HTTP Status Code。狀態代碼由三位數字組成,第一個數字定義了響應的類別,且有五種可能取值。
1xx:指示信息--表示請求已接收,繼續處理。
2xx:成功--表示請求已被成功接收、理解、接受。
3xx:重定向--要完成請求必須進行更進一步的操作。
4xx:客戶端錯誤--請求有語法錯誤或請求無法實現。
5xx:服務器端錯誤--服務器未能實現合法的請求。
常見狀態代碼、狀態描述的說明如下。
200 OK:客戶端請求成功。
400 Bad Request:客戶端請求有語法錯誤,不能被服務器所理解。
401 Unauthorized:請求未經授權,這個狀態代碼必須和WWW-Authenticate報頭域一起使用。
403 Forbidden:服務器收到請求,但是拒絕提供服務。
404 Not Found:請求資源不存在,舉個例子:輸入了錯誤的URL。
500 Internal Server Error:服務器發生不可預期的錯誤。
503 Server Unavailable:服務器當前不能處理客戶端的請求,一段時間后可能恢復正常。
參考:
http://blog.csdn.net/javandroid/article/details/29884033