http 協議:http 協議是一種無狀態,短鏈接的 通信協議,http 協議建立在 tcp 協議之上。
http 協議 分成 三個 部分 請求行,請求頭,請求體
請求行: 就是訪問的地址 ( 包含 ? 和后面的參數) 如: 127.0.0.1/server/add?id=1
請求頭: http 的 header 部分,比如: centent-type=Application/json
請求體: post 請求才有請求體,get 沒有 , put 請求也有(強調冪等性),還有文件上傳,數據文件也是放在 請求體里面的。
https: https 是 http 協議上面加了一個層 ssl 或者 tls 之類的安全機制。
https 請求的 大概過程:
客戶端請求服務器 ——> 服務器返回 證書——>客戶端驗證證書的信息的合法性(域名是否一致,ca 機構是否 是公認的等...... )——> 客戶端使用剛才下發的公鑰加密自己秘鑰和自己的公鑰發送給服務器——>服務器端使用私鑰解析得到客戶端的秘鑰,并且使用客戶端的公鑰加密 隨機生成的 密鑰 發送給客戶端——>客戶端 用自己的私鑰解密 得到 服務器端密鑰 ——> 后面雙方使用 各自的秘鑰通信
備注:后面用的 秘鑰 是隨機的對稱加密的秘鑰,而前面通信的用的 是證書的 公私玥 的非對稱加密。
ssl 和 tls : tls 是 基于 ssl 3.0 的,可以說 tls 就是 ssl 3.0 以后的版本。