WebService入门教程_HTTP协议学习
場景
項目專欄:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/column/info/37726
實現
HTTP簡介
WEB瀏覽器與WEB服務器之間的一問一答的交互過程必須遵循一定的規則,這個規則就是HTTP協議。
HTTP是 hypertext transfer protocol(超文本傳輸協議)的簡寫,它是 TCP/IP 協議集中的一個應用層協議,用于定義WEB瀏覽器與WEB服務器之間交換數據的過程以及數據本身的格式。
HTTP協議的版本 HTTP/1.0、HTTP/1.1、HTTP-NG
HTTP的會話方式
瀏覽器與WEB服務器的連接過程是短暫的,每次連接只處理一個請求和響應。對每一個頁面的訪問,瀏覽器與WEB服務器都要建立一次單獨的連接。?
瀏覽器到WEB服務器之間的所有通訊都是完全獨立分開的請求和響應對。
HTTP1.0與HTTP1.1
HTTP請求概述
客戶端連上服務器后,向服務器請求某個web資源,稱之為客戶端向
服務器發送了一個HTTP請求。
一個完整的HTTP請求包括如下內容:
?1.請求行
2.?若干消息頭
?3.實體內容(可能沒有),如下所示 :
請求行
請求行中的GET稱之為請求方式,請求方式有:
POST、GET、HEAD、OPTIONS、DELETE、TRACE、PUT
常用的有: GET、 POST
用戶如沒有設置,默認情況下瀏覽器向服務器發送的都是get請求,例如在瀏覽器直接輸地址訪問,點超鏈接訪問等都是get,用戶如想把請求方式改為post,可通過更改表單的提交方式實現。
不管POST或GET,都用于向服務器請求某個WEB資源,這兩種方式的區別主要表現在數據傳遞上:
如請求方式為GET方式,則可以在請求的URL地址后以?的形式帶上交給服務器的數據,多個數據之間以&進行分隔,例如:
GET/mail/1.html?name=abc&password=xyz HTTP/1.1
GET方式的特點:在URL地址后附帶的參數是有限制的,其數據容量通常不能超過1K。
如請求方式為POST方式,則可以在請求的實體內容中向服務器發送數據,Post方式的特點:傳送的數據量無限制。
請求頭
常用請求頭(瀏覽器發送給服務器的數據,為了告訴服務器一些情況)
?Accept: text/html,image/*??? 我支持的數據類型Accept-Charset: utf-8 支持的數據的編碼字符集Accept-Encoding: gzip 支持的壓縮方式Accept-Language: en-us,zh-cn 支持的語言Host: localhost:8888 請求的主機名Referer: http://www.badao.com/index.jsp 發送請求的界面對應的url 防盜鏈User-Agent: Mozilla/4.0 瀏覽器的相關信息Connection: keep-Alive?? 請求完成后,到是斷開呢還是連接著Date: Tue, 11 Jul 2019 18:23:51 GMT 發送請求的時間Cookie: tt=123???請求體
? GET請求:沒有請求體
? POST請求:如果form表單提交的方式為post,則表單項的數據以請求體的形式發送給服務器,沒有大小限制
HTTP響應概述
一個HTTP響應代表服務器向客戶端回送的數據,它包括: 一個狀態行 若干消息頭(響應頭) 實體內容 (響應體)
響應狀態行
狀態行
?格式: HTTP版本號 狀態碼 原因敘述
?舉例:HTTP/1.1 200 OK
響應頭
響應頭(瀏覽器發送給服務器的數據,為了告訴服務器一些情況):
?Location: /test/index.jsp? 告訴瀏覽器重新定向到指定的路徑Server:apache tomcat 使用的什么web服務器Content-Encoding: gzip? 告訴瀏覽器我傳給你的數據用的壓縮方式Content-Length: 80 響應體的字節數Content-Language: zh-cn 響應體數據的語言content-type: text/html; charset=GB2312 響應體內容的類型 html/ css / imageLast-Modified: Tue, 11 Jul 2019 18:23:51 GMT 資源最后被修改的時間Refresh: 1定時刷新Content-Disposition: attachment; filename=aaa.zip 提示用戶下載Set-Cookie:SS=Q0=5Lb_nQ; path=/search 將cookie數據回送給ieExpires: -1? 告訴瀏覽器不要緩存起來 Cache-Control: no-cache?Pragma: no-cache??Connection: close/Keep-Alive?? 是否保持連接Date: Tue, 11 Jul 2019 18:23:51 GMT 響應的時間響應體
瀏覽器真正顯示的數據,一般情況下為一個html格式的文本,也可以是其它類型的數據
?
?
?
總結
以上是生活随笔為你收集整理的WebService入门教程_HTTP协议学习的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: WebService入门教程_Schem
- 下一篇: ImportError:cannot i