愛站查詢工具北京網(wǎng)站sem、seo
目錄
1.Websocket
Websocket與HTTP的介紹
不同使用場景
Websocket鏈接過程
2.Session&Cookie
Cookie的工作原理
Session的工作原理
區(qū)別
3.前端基礎(chǔ)知識
1.Websocket
Websocket與HTTP的介紹
HTTP:
1.
HTTP
是單向的,客戶端發(fā)送請求,服務(wù)器發(fā)送響應(yīng)。每個HTTP
或HTTPS
請求每次都會新建與服務(wù)器的連接,并且在獲得響應(yīng)后,連接將自行終止。?每個HTTP
請求都會建立單獨的TCP
連接到服務(wù)器。2.從?
HTTP/1.1
起,默認使用長連接,用以保持連接特性。使用長連接的HTTP
協(xié)議,會在響應(yīng)頭有加入這個頭部字段:Connection:keep-alive。
在使用長連接的情況下,當(dāng)一個網(wǎng)頁打開完成后,客戶端和服務(wù)器之間用于傳輸HTTP
數(shù)據(jù)的TCP
連接不會關(guān)閉,如果客戶端再次訪問這個服務(wù)器上的網(wǎng)頁,會繼續(xù)使用這一條已經(jīng)建立的連接。Keep-Alive
不會永久保持連接,它有一個保持時間,可以在服務(wù)器中設(shè)定時間。Websocket:
1.
WebSocket
是雙向的,在客戶端-服務(wù)器通信的場景中使用的全雙工協(xié)議,與HTTP
不同,它是一個有狀態(tài)協(xié)議,這意味著客戶端和服務(wù)器之間的連接將保持活動狀態(tài),直到被任何一方(客戶端或服務(wù)器)終止。在通過客戶端和服務(wù)器中的任何一方關(guān)閉連接之后,連接將從兩端終止。2.客戶端-服務(wù)器進行握手隨后創(chuàng)建一個新的連接,該連接將保持活動狀態(tài),直到被他們中的任何一方終止。建立連接并保持活動狀態(tài)后,客戶端和服務(wù)器將使用相同的連接通道進行通信,直到連接終止。
不同使用場景
WebSocket:需要通過網(wǎng)絡(luò)傳輸?shù)娜魏螌崟r更新或連續(xù)數(shù)據(jù)流,則可以使用
WebSocket
HTTP:
不需要很頻繁或僅獲取一次的數(shù)據(jù)可以通過簡單的HTTP
請求查詢Websocket鏈接過程
先是HTTP協(xié)議進行三次握手;當(dāng)握手成功后,一端發(fā)送的HTTP協(xié)議報文中包含協(xié)議升級成Websocket字段,另一端對結(jié)果進行響應(yīng);隨后兩個主機之間的鏈接協(xié)議就是Websocket了;之后主機間的鏈接為長鏈接會不斷更新信息。
2.Session&Cookie
都是用來跟蹤瀏覽器用戶身份的會話方式
Cookie的工作原理
1.瀏覽器端先發(fā)送請求到服務(wù)器端
2.服務(wù)器端創(chuàng)建Cookie信息,此Cookie包含用戶的信息(賬號密碼等),隨后將該Cookie發(fā)送到瀏覽器端3.瀏覽器端接收到Cookie后將所謂的Cookie文件保存到本地中
4.瀏覽器端再次訪問服務(wù)器端時會攜帶服務(wù)器端創(chuàng)建的Cookie信息
5.服務(wù)器端得到Cookie消息,提取其中攜帶的數(shù)據(jù)來區(qū)分不同用戶Cookie的缺點:安全性無法體現(xiàn),因為將所謂的Cookie消息發(fā)送給用戶,中間可能會被截取,那么一旦中間人攻擊后,只需要包含Cookie消息并且發(fā)送需要篡改的內(nèi)容就可以實現(xiàn)數(shù)據(jù)的破壞。
Session的工作原理
1.瀏覽器端發(fā)送請求到服務(wù)器端,服務(wù)器端創(chuàng)建一個Session,同時會創(chuàng)建一個Cookie,此,Cookie的有效信息僅僅為創(chuàng)建的Session的ID,然后將該Cookie發(fā)送至瀏覽器端。將創(chuàng)造的Cookie和對應(yīng)的Session一起存儲。
2.瀏覽器端每次發(fā)送請求到服務(wù)器端,瀏覽器端訪問服務(wù)器端時就會把Cookie對象傳過去
3.服務(wù)器端根據(jù)通過Cookie提供的Session的ID的去查詢Session對象,從而區(qū)分不同用戶。
?區(qū)別
1.cookie的數(shù)據(jù)存放在客戶的本地文件中,session的數(shù)據(jù)存放在服務(wù)器
2.cookie不是很安全,別人可以分析存放在本地的COOKIE并進行COOKIE欺騙。如果主要考慮到安全應(yīng)當(dāng)使用session
3.session會在一定時間內(nèi)保存在服務(wù)器上。當(dāng)訪問增多,會比較占用你服務(wù)器的性能,如果主要考慮到減輕服務(wù)器性能方面,應(yīng)當(dāng)使用COOKIE
4.單個cookie在客戶端的限制是3K,就是說一個站點在客戶端存放的COOKIE不能3K。
5.將登陸信息等重要信息存放為SESSION;其他信息如果需要保留,可以放在COOKIE中
3.前端基礎(chǔ)知識
HTML:超文本標(biāo)記語言,它定義了網(wǎng)頁內(nèi)容的含義和結(jié)構(gòu)。HTML 使用“標(biāo)記”(markup)來注明文本、圖片和其他內(nèi)容,以便于在 Web 瀏覽器中顯示。
CSS:層疊樣式表,CSS 描述了在屏幕、紙質(zhì)、音頻等其他媒體上的元素應(yīng)該如何被渲染的問題。
vue.js:?是一款用于構(gòu)建用戶界面的 JavaScript 框架。它基于標(biāo)準(zhǔn) HTML、CSS 和 JavaScript 構(gòu)建,并提供了一套聲明式的、組件化的編程模型,幫助你高效地開發(fā)用戶界面。Ajax:Ajax其實就是瀏覽器與服務(wù)器之間的一種異步通信方式
異步的JavaScript:它可以異步地向服務(wù)器發(fā)送請求,在等待響應(yīng)的過程中,不會阻塞當(dāng)前頁面,在這種情況下,瀏覽器可以做自己的事情。直到成功獲取響應(yīng)后,瀏覽器才開始處理響應(yīng)數(shù)據(jù)。