http協(xié)議:
http是超文本傳輸協(xié)議(Hyper Text Transfer Protocol),是一種無狀態(tài)的協(xié)議,HTTP在客戶端和服務(wù)器之間以request-responseprotocol工作,通常發(fā)送請(qǐng)求就是http中的兩種: GET/POST
長(zhǎng)連接:
???????早期在設(shè)計(jì)網(wǎng)絡(luò)通信, 其實(shí)沒有考慮長(zhǎng)短連接的問題.
設(shè)計(jì)這個(gè)連接源于我們連接本身很復(fù)雜. 早期在設(shè)計(jì)連接的時(shí)候采用三次握手的模型.
早期在設(shè)計(jì)連接的時(shí)候 只是考慮數(shù)據(jù)的傳輸 因此 只要連接上 數(shù)據(jù)傳輸完畢 即斷開連接. 這個(gè)現(xiàn)在稱為 短連接.
但是今天頁(yè)面發(fā)展的非常快, 為了保證可以下載完整的數(shù)據(jù), 不可能頻繁的連接接收數(shù)據(jù).
因此考慮將連接數(shù)據(jù)傳輸結(jié)束后在一定時(shí)間內(nèi)保持連接, 如果還有數(shù)據(jù)傳輸, 則時(shí)間重新計(jì)算.
如果超出時(shí)間范圍 再 斷開連接. 將這樣的連接稱為長(zhǎng)連接.
GET--從指定的服務(wù)器中獲取數(shù)據(jù)
POST--提交數(shù)據(jù)給指定的服務(wù)器處理
使用GET請(qǐng)求時(shí),查詢字符串被拼接在url后面作為參數(shù)一起發(fā)送到服務(wù)器
特點(diǎn):
<li>GET 請(qǐng)求能夠被緩存
<li>GET 請(qǐng)求會(huì)保存在瀏覽器的瀏覽記錄中
<li>以GET請(qǐng)求的URL能夠保存為瀏覽器書簽
<li>GET請(qǐng)求有長(zhǎng)度限制
<li>GET請(qǐng)求主要用以獲取數(shù)據(jù)
使用POST請(qǐng)求時(shí),只需要將表單中的 method 屬性修改為 post 即可發(fā)送 post 請(qǐng)求
get 請(qǐng)求 與 post 請(qǐng)求有什么區(qū)別?
1.GET 請(qǐng)求謂詞 為 get, 參數(shù)會(huì)附在 url 地址中傳遞, get 請(qǐng)求會(huì)有緩存
2.POST 請(qǐng)求謂詞 為 post, 參數(shù)會(huì)在報(bào)文中提供, post 請(qǐng)求沒有緩存. post 會(huì)增加一個(gè)新的 MIME 類型,這個(gè) mime 類型是為了告訴服務(wù)器如何解釋參數(shù)
異同
????????- GET 請(qǐng)求會(huì)將數(shù)據(jù)暴露在 url 地址中, 因此敏感信息應(yīng)該使用 post 請(qǐng)求.
????????- 由于 GET 請(qǐng)求時(shí)將數(shù)據(jù)放在 url 地址里面 而不同的瀏覽器 url 地址的容量是有限的. 如果請(qǐng)求發(fā)送的數(shù)據(jù)過大不易使用 GET.
????????- 由于 GET 請(qǐng)求使用 url 地址, 也字符串來提交參數(shù), 因此無法處理二進(jìn)制數(shù)據(jù), 因此要提交文件數(shù)據(jù), 必須使用 POST
HTML5的websocket,實(shí)現(xiàn)了持久的瀏覽器和服務(wù)器通信:
通常我們用http協(xié)議,只能實(shí)現(xiàn)客戶端發(fā)送請(qǐng)求給服務(wù)器,服務(wù)器返回?cái)?shù)據(jù),只有請(qǐng)求的情況下才會(huì)返回?cái)?shù)據(jù),但如果服務(wù)器連續(xù)更新狀態(tài),那么我們的客戶端就收不到服務(wù)器的實(shí)時(shí)數(shù)據(jù),這種單項(xiàng)的數(shù)據(jù)傳遞,就注定了我們客戶端如果想獲取就非常困難,我們只能使用"輪詢",m每隔一段時(shí)間發(fā)送一個(gè)詢問,詢問服務(wù)器有沒有新的數(shù)據(jù),最典型的使用場(chǎng)景就是聊天室,"輪詢"的效率低,非常浪費(fèi)網(wǎng)絡(luò)資源,這時(shí)候html5的websocket就被發(fā)明了
最大的特點(diǎn):就是服務(wù)器可以主動(dòng)給客戶端發(fā)送信息,客戶端也可以主動(dòng)給服務(wù)器發(fā)送信息,真正實(shí)現(xiàn)了數(shù)據(jù)的實(shí)時(shí)更新,是服務(wù)器技術(shù)的一種方式