HTTP協議

協議:雙方或多方一式2份或多份,作出雙方同意的約定的內容


webservice=http+xml

Rest= http +json

Api一般也是上面兩種


其他協議還有:tcp/ip ftp 協議等


涉及到協議的兩個爲客戶端,服務器(apache,ngnix...)

客戶端發送請求,服務器沿着請求返回響應,客戶端收到後解釋爲圖片文字,斷開連接


下方爲打開一頁面的請求和響應信息 (network)(突然覺得這信息量好大)



cmd: telnet ip地址 80  回車

win ctrl + ]


請求格式::

GET (請求方法)文件路徑 HTTP/1.1 1請求行

Host:localhost 2請求頭部信息


3主體信息 可沒有上面一定要空行)


響應格式::

響應行: 協議版本 狀態碼 狀態文字

響應頭信息: key:value這樣的對應格式



請求方法有很多種:get,post,put,delete,trace,options(全爲大寫)

post的請求怎麼寫

POST  文件路徑 HTTP/1.1

Host:localhost

Content-type:application/x-www-form-urlencoded (服務器才知道需要接收)

Content-length:xx (自己算好多少個,讓對方知道接收多少)


name=sonia&age=3 (主體信息)


head

和get一樣,但get返回內容,而head不返回

Trace

用代理上網訪問網站(寫在host後面的),trace看這個網站有沒有修改http請求

options

返回服務器是否可用

雖然http協議裏這些方法都有寫入,但不是所有的服務器都支持這些方法



狀態碼





header('Location:http://www.baidu.com');//默認是302重定向

header('Location:http://www.baidu.com',true,301);設定爲301,改爲307-》eg:post的話,可以轉到網頁時保持原有method,因爲默認是get





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章