1 建立tcp連線
http工作之前,瀏覽器先通過網路與web伺服器建立連線,通過tcp(有三次握手)完成。
2 web瀏覽器向web伺服器傳送請求命令
建立了tcp連線後,就向伺服器傳送請求命令。
3 web瀏覽器傳送請求頭資訊
再以頭資訊的形式向伺服器傳送些資訊來描述瀏覽器自己,以及一空白行來通知伺服器該頭資訊已結束。若是post請求,還會傳送請求體。
4 web伺服器應答
第一部分是協議的版本號和應答狀態碼。
5 web伺服器傳送應答頭資訊
伺服器向客戶端傳送一些自己的資料以及被請求的文件,以空白行結束此資訊。
6 web伺服器向瀏覽器傳送資料
以content-type應答頭資訊所描述的格式傳送請求的實際資料。
7 web伺服器關閉tcp連線
一般傳送了資料之後就會關閉tcp連線,但如果有 connection:keep-alive,就說明tcp要一直保持開啟狀態,於是,瀏覽器就可以繼續通過相同的連線傳送請求,保持連線節省了為每個請求建立新連線所需的事件,還節約了網路頻寬。
1 get
是預設的http請求方法,提交的資料量小,提交的表單資料只經過了簡單的編碼,同時作為url的一部分想web伺服器傳送,存在較大的安全隱患。
2 post
是get的乙個替代方法,提交大批量的資料。提交時是作為標準資料傳送給web伺服器的,安全性高。
1xx:指示資訊,表示請求已經接收,繼續處理。
2xx:成功,表示請求已經被成功接收、理解、接受。
3xx:重定向,要完成請求必須進行更進一步的操作。
4xx:客戶端錯誤,請求有語法錯誤或請求無法實現。
5xx:伺服器端錯誤,伺服器未能實現合法的請求。
200:客戶端請求成功。
400:客戶端請求有語法錯誤,不能被伺服器所理解。
401:請求未經授權,這個狀態碼必須和www-authenticate包頭域一起使用。
403:伺服器收到請求,但是拒絕提供服務。
404:請求資源不存在,如輸入了錯誤的url。
500:伺服器發生不可預期的錯誤。
503:伺服器當前不能處理客戶端的請求,一段時間後可能恢復正常。
感謝這篇文章:
有不足之處歡迎指正,共同學習。
(⌒▽⌒)
HTTP學習 HTTP請求方法
根據http標準,http請求可以使用多種請求方法。http1.0定義了三種請求方法 get,post 和 head方法。http1.1新增了五種請求方法 options,put,delete,trace 和 connect 方法。請求方法作用場景 get 請求獲取request uri所標識的資源...
Android學習 Http請求
今天繼續學習網路程式設計模組。首先是webview,簡單的來訪問網頁 在這之前先要什麼訪問網路的許可權 android name android.permission.internet 實現在layout中新建webview元件,然後在activity中新建webview物件,然後呼叫setwebv...
Android學習 HTTP請求
一 使用httpurlconnectionurl url new url httpurlconnection connection httpurlconnection url.openconnection 在得到httpurlconnection的例項後,設定http請求所使用的方法 get和pos...