django學習----http協議
阿新 • • 發佈:2017-11-04
pro ascii display 信息 chrome text accep 支持 play
了解http協議的格式
請求協議:request
請求首行:包含請求方式(如get、post) url 協議版本
請求頭:請求信息
空行:
請求數據:與網頁內容相關的信息
get與post的區別:
在數據上get請求數據不會在請求體中它會放在URL後面,並且數據量有限制
post沒有數據限制{表單:調整method="post"}
在地址欄直接給出地址的一定是get請求{地址欄請求,表單(默認)}
1、Host 請求的web服務器域名地址 2、User-Agent HTTP客戶端運行的瀏覽器類型的詳細信息。通過該頭部信息,web服務器可以判斷出http請求的客戶端的瀏覽器的類型。 3、Accept 指定客戶端能夠接收的內容類型,內容類型的先後次序表示客戶都接收的先後次序 4、Accept-Lanuage 指定HTTP客戶端瀏覽器用來展示返回信息優先選擇的語言 5、Accept-Encoding 指定客戶端瀏覽器可以支持的web服務器返回內容壓縮編碼類型。表示允許服務器在將輸出內容發送到客戶端以前進行壓縮,以節約帶寬。 而這裏設置的就是客戶端瀏覽器所能夠支持的返回壓縮格式。 6、Accept-Charset HTTP客戶端瀏覽器可以接受的字符編碼集 7、Content-Type 顯示此HTTP請求提交的內容類型。一般只有post提交時才需要設置該屬性 有關Content-Type屬性值有如下兩種編碼類型: (1)“application/x-www-form-urlencoded”: 表單數據向服務器提交時所采用的編碼類型,默認的缺省值就是“application/x-www-form-urlencoded”。 然而,在向服務器發送大量的文本、包含非ASCII字符的文本或二進制數據時這種編碼方式效率很低。 (2)“multipart/form-data”: 在文件上載時,所使用的編碼類型應當是“multipart/form-data”,它既可以發送文本數據,也支持二進制數據上載。 當提交為表單數據時,可以使用“application/x-www-form-urlencoded”;當提交的是文件時,就需要使用“multipart/form-data”編碼類型。
GET /562f25980001b1b106000338.jpg HTTP/1.1 Host img.mukewang.com User-Agent Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36 Accept image/webp,image/*,*/*;q=0.8 Referer http://www.imooc.com/ Accept-Encoding gzip, deflate, sdch Accept-Language zh-CN,zh;q=0.8get
POST / HTTP1.1 Host:www.wrox.com User-Agent:Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022) Content-Type:application/x-www-form-urlencoded Content-Length:40 Connection: Keep-Alive name=Professional%20Ajax&publisher=Wileypost
http協議格式 請求協議 (request) 請求首行 : 方法 url 協議版本 請求頭 : 請求信息 空行 : 請求數據 GET url http 1.1 Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8 Accept-Encoding:gzip, deflate, br Accept-Language:zh-CN,zh;q=0.8 Cache-Control:max-age=0 Connection:keep-alive Cookie:BAIDUID=88ECF89623BCA604E91B4C2250FE0F69:FG=1; BIDUPSID=88ECF89623BCA604E91B4C2250FE0F69; PSTM=1499646358; BDUSS=VFseTdVbGNEQWxZZFdqb21wZE1PR2ZsSnBTWW5LfnpuU1hJcEI4VGJ4WHdYT0ZaSVFBQUFBJCQAAAAAAAAAAAEAAAD3IxBGbGhmNDU3MwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPDPuVnwz7lZO; cflag=4%3A3; BD_HOME=1; H_PS_PSSID=1420_13290_21127_20242_24023_20718; BD_UPN=12314353 Host:www.baidu.com Upgrade-Insecure-Requests:1 User-Agent:Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36 username="yuan" pwd=123 GET請求常用的操作: 1. 在瀏覽器的地址欄中直接給出URL,那麽就一定是GET請求 2. 點擊頁面上的超鏈接也一定是GET請求 3. 提交表單時,表單默認使用GET請求,但可以設置為POST 響應協議 (response) 響應首行 響應頭 空行 響應內容 http 1.1 200 OK Bdpagetype:2 Bdqid:0x9d4742100000b7c6 Bduserid:1175462903 Cache-Control:private Connection:Keep-Alive Content-Encoding:gzip Content-Type:text/html;charset=utf-8 Date:Thu, 19 Oct 2017 01:58:07 GMT Expires:Thu, 19 Oct 2017 01:58:06 GMT Server:BWS/1.1 Set-Cookie:BDSVRTM=249; path=/ Set-Cookie:BD_HOME=1; path=/ Set-Cookie:H_PS_PSSID=1420_13290_21127_20242_24023_20718; path=/; domain=.baidu.com Strict-Transport-Security:max-age=172800 Transfer-Encoding:chunked X-Ua-Compatible:IE=Edge,chrome=1http協議格式
首行
以下是百度的相關request hedear
響應協議 :response
django學習----http協議