1 網絡傳輸知識javascript
1.1 協議java
HTTP(超文本傳輸協議)是一個基於請求與響應模式的、無狀態的、應用層的協議。算法
1.2 Cache數據庫
1.3 Cooike後端
Cookie就是由服務器發給客戶端的特殊信息,而這些信息以文本文件的方式存放在客戶端,而後客戶端每次向服務器發送請求的時候都會帶上這些特殊的信息。跨域
1.4 Session(會話)瀏覽器
Session是另外一種記錄客戶狀態的機制,不一樣的是Cookie保存在客戶端瀏覽器中,而Session保存在服務器上。客戶端瀏覽器訪問服務器的時候,服務器把客戶端信息以某種形式記錄在服務器上。緩存
經過Cookie傳輸:安全
URL地址重寫,對客戶端不支持Cookie的解決方案。將用戶Session信息重寫到URL地址中。服務器
cookie與session的區別
1.5 token(令牌)
使用基於 Token 的身份驗證方法,在服務端不須要存儲用戶的登陸記錄。大概的流程是這樣的:
Token機制相對於Cookie機制又有什麼好處呢?
1.6 JWT
JSON Web Token(JWT)是一個很是輕巧的規範。這個規範容許咱們使用JWT在用戶和服務器之間傳遞安全可靠的信息.
JWT組成:一個JWT實際上就是一個字符串,由三部分組成,頭部、載荷與簽名。
header :1.Token 的類型 2.使用的算法。
Payload 是Token 的具體內容:
Signature:1.用 Base64 編碼的 header.payload 2.加密算法加密 3.加密須要提供一個Secret(密鑰)。密鑰存儲在服務端。
2 HTTP協議
URL:Uniform Resource Locator,統一資源定位符。
2.1 HTTP請求
HTTP請求由三部分組成,分別是:請求行、消息報頭、請求正文。
請求方法:
GET 請求獲取Request-URI所標識的資源 POST 在Request-URI所標識的資源後附加新的數據,經常使用於提交表單 HEAD 請求獲取由Request-URI所標識的資源的響應消息報頭 PUT 請求服務器存儲一個資源,並用Request-URI做爲其標識 DELETE 請求服務器刪除Request-URI所標識的資源 TRACE 請求服務器回送收到的請求信息,主要用於測試或診斷 能夠追蹤一次請求中間所通過的代理服務器有哪些 CONNECT 保留未來使用 OPTIONS 請求查詢服務器的性能,或者查詢與資源相關的選項和需求 能夠用來獲取服務器端資源支持的方法
2.2 請求響應
HTTP響應也是由三個部分組成,分別是:狀態行、消息報頭、響應正文。
3 HTTP協議
什麼是HTTPS:與SSL(安全套接層)組合使用的HTTP被稱爲HTTPS(HTTP Secure,超文本傳輸安全協議)。
4 WebSocket協議
WebSocket是一個持久化協議,升級原有HTTP中經過long poll和Ajax輪詢方式,Websocket只須要一次HTTP握手,因此說整個通信過程是創建在一次鏈接/狀態中,也就避免了HTTP的非狀態性,服務端會一直知道你的信息,直到你關閉請求。