1. <dd id="jcnig"><nav id="jcnig"><delect id="jcnig"></delect></nav></dd>
      <dfn id="jcnig"><tt id="jcnig"><sup id="jcnig"></sup></tt></dfn>

    2. <cite id="jcnig"></cite>
      <cite id="jcnig"><tt id="jcnig"></tt></cite>

      <address id="jcnig"><nav id="jcnig"></nav></address>
    3. <address id="jcnig"><nav id="jcnig"></nav></address>
      400-650-7353

      精品課程

      您所在的位置:首頁 > IT干貨資料 > web前端 > 【Web前端基礎】http和https詳解

      【Web前端基礎】http和https詳解

      • 發布: Web前端培訓
      • 來源:
      • 2021-07-26 15:43:52
      • 閱讀()
      • 分享
      • 手機端入口

      1.什么是協議?

      網絡協議是計算機之間為了實現網絡通信而達成的一種“約定”或者”規則“,有了這種”約定“,不同廠商的生產設備,以及不同操作系統組成的計算機之間,就可以實現通信。

      2.HTTP協議是什么?

      HTTP協議是超文本傳輸協議的縮寫,英文是Hyper Text Transfer Protocol。它是從WEB服務器傳輸超文本標記語言(HTML)到本地瀏覽器的傳送協議。

      設計HTTP最初的目的是為了提供一種發布和接收HTML頁面的方法。

      HTPP有多個版本,目前廣泛使用的是HTTP/1.1版本。

      3.HTTP原理

      HTTP是一個基于TCP/IP通信協議來傳遞數據的協議,傳輸的數據類型為HTML 文件,、圖片文件, 查詢結果等。

      HTTP協議一般用于B/S架構()。瀏覽器作為HTTP客戶端通過URL向HTTP服務端即WEB服務器發送所有請求。

      【Web前端基礎】http和https詳解

      4.HTTP特點

      http協議支持客戶端/服務端模式,也是一種請求/響應模式的協議。

      簡單快速:客戶向服務器請求服務時,只需傳送請求方法和路徑。請求方法常用的有GET、HEAD、POST。

      靈活:HTTP允許傳輸任意類型的數據對象。傳輸的類型由Content-Type加以標記。

      無連接:限制每次連接只處理一個請求。服務器處理完請求,并收到客戶的應答后,即斷開連接,但是卻不利于客戶端與服務器保持會話連接,為了彌補這種不足,產生了兩項記錄http狀態的技術,一個叫做Cookie,一個叫做Session。

      無狀態:無狀態是指協議對于事務處理沒有記憶,后續處理需要前面的信息,則必須重傳。

      5.URI和URL的區別

      HTTP使用統一資源標識符(Uniform Resource Identifiers, URI)來傳輸數據和建立連接。

      • URI:Uniform Resource Identifier 統一資源標識符

      • URL:Uniform Resource Location 統一資源定位符

      URI 是用來標示 一個具體的資源的,我們可以通過 URI 知道一個資源是什么。

      URL 則是用來定位具體的資源的,標示了一個具體的資源位置;ヂ摼W上的每個文件都有一個唯一的URL。

      6.HTTP報文組成

      請求報文構成

      請求行:包括請求方法、URL、協議/版本

      請求頭(Request Header)

      請求正文

      7.常見請求方法

      • GET:請求指定的頁面信息,并返回實體主體。

      • POST:向指定資源提交數據進行處理請求(例如提交表單或者上傳文件)。數據被包含在請求體中。POST請求可能會導致新的資源的建立和/或已有資源的修改。

      • HEAD:類似于get請求,只不過返回的響應中沒有具體的內容,用于獲取報頭

      • PUT:從客戶端向服務器傳送的數據取代指定的文檔的內容。

      • DELETE:請求服務器刪除指定的頁面。

      post和get的區別:

      • 都包含請求頭請求行,post多了請求body。

      • get多用來查詢,請求參數放在url中,不會對服務器上的內容產生作用。post用來提交,如把賬號密碼放入body中。

      • GET是直接添加到URL后面的,直接就可以在URL中看到內容,而POST是放在報文內部的,用戶無法直接看到。

      • GET提交的數據長度是有限制的,因為URL長度有限制,具體的長度限制視瀏覽器而定。而POST沒有。

      8.響應狀態碼

      訪問一個網頁時,瀏覽器會向web服務器發出請求。此網頁所在的服務器會返回一個包含HTTP狀態碼的信息頭用以響應瀏覽器的請求。

      狀態碼分類:

      • 1XX- 信息型,服務器收到請求,需要請求者繼續操作。

      • 2XX- 成功型,請求成功收到,理解并處理。

      • 3XX - 重定向,需要進一步的操作以完成請求。

      • 4XX - 客戶端錯誤,請求包含語法錯誤或無法完成請求。

      • 5XX - 服務器錯誤,服務器在處理請求的過程中發生了錯誤。

      常見狀態碼:

      • 200 OK - 客戶端請求成功

      • 301 - 資源(網頁等)被永久轉移到其它URL

      • 302 - 臨時跳轉

      • 400 Bad Request - 客戶端請求有語法錯誤,不能被服務器所理解

      • 401 Unauthorized - 請求未經授權,這個狀態代碼必須和WWW-Authenticate報頭域一起使用

      • 404 - 請求資源不存在,可能是輸入了錯誤的URL

      • 500 - 服務器內部發生了不可預期的錯誤

      • 503 Server Unavailable - 服務器當前不能處理客戶端的請求,一段時間后可能恢復正常。

      9.為什么要用https?

      實際使用中,絕大說的網站現在都采用的是https協議,這也是未來互聯網發展的趨勢。

      HTTP協議不適合傳輸一些敏感信息,比如:各種賬號、密碼等信息,使用http協議傳輸隱私信息非常不安全。

      一般http中存在如下問題:

      • 請求信息明文傳輸,容易被竊聽截取。

      • 數據的完整性未校驗,容易被篡改

      • 沒有驗證對方身份,存在冒充危險

      10.什么是HTTPS?

      為了解決上述HTTP存在的問題,就用到了HTTPS。

      HTTPS 協議(HyperText Transfer Protocol over Secure Socket Layer):一般理解為HTTP+SSL/TLS,通過 SSL證書來驗證服務器的身份,并為瀏覽器和服務器之間的通信進行加密。

      那么SSL又是什么?

      SSL(Secure Socket Layer,安全套接字層):1994年為 Netscape 所研發,SSL 協議位于 TCP/IP 協議與各種應用層協議之間,為數據通訊提供安全支持。

      TLS(Transport Layer Security,傳輸層安全):其前身是 SSL,它最初的幾個版本(SSL 1.0、SSL 2.0、SSL 3.0)由網景公司開發,1999年從 3.1 開始被 IETF 標準化并改名,發展至今已經有 TLS 1.0、TLS 1.1、TLS 1.2 三個版本。SSL3.0和TLS1.0由于存在安全漏洞,已經很少被使用到。TLS 1.3 改動會比較大,目前還在草案階段,目前使用最廣泛的是TLS 1.1、TLS 1.2。

      SSL發展史(互聯網加密通信)

      1994年NetSpace公司設計SSL協議(Secure Sockets Layout)1.0版本,但未發布。

      1995年NetSpace發布SSL/2.0版本,很快發現有嚴重漏洞

      1996年發布SSL/3.0版本,得到大規模應用

      1999年,發布了SSL升級版TLS/1.0版本,目前應用最廣泛的版本

      2006年和2008年,發布了TLS/1.1版本和TLS/1.2版本

      11.瀏覽器在使用HTTPS傳輸數據的流程是什么?

      數據傳輸流程

      首先客戶端通過URL訪問服務器建立SSL連接。

      服務端收到客戶端請求后,會將網站支持的證書信息(證書中包含公鑰)傳送一份給客戶端。

      客戶端的服務器開始協商SSL連接的安全等級,也就是信息加密的等級。

      客戶端的瀏覽器根據雙方同意的安全等級,建立會話密鑰,然后利用網站的公鑰將會話密鑰加密,并傳送給網站。

      服務器利用自己的私鑰解密出會話密鑰。

      服務器利用會話密鑰加密與客戶端之間的通信。

      12.HTTPS的缺點

      • HTTPS協議多次握手,導致頁面的加載時間延長近50%;

      • HTTPS連接緩存不如HTTP高效,會增加數據開銷和功耗;

      • 申請SSL證書需要錢,功能越強大的證書費用越高。

      • SSL涉及到的安全算法會消耗 CPU 資源,對服務器資源消耗較大。

      13.總結HTTPS和HTTP的區別

      • HTTPS是HTTP協議的安全版本,HTTP協議的數據傳輸是明文的,是不安全的,HTTPS使用了SSL/TLS協議進行了加密處理。

      • http和https使用連接方式不同,默認端口也不一樣,http是80,https是443。

      學習疑問申請解答
      您的姓名
      您的電話
      意向課程
       

      中公優就業

      IT小助手

      掃描上方二維碼添加好友,請備注:599,享學習福利。

      >>本文地址:
      注:本站稿件未經許可不得轉載,轉載請保留出處及源文件地址。

      推薦閱讀

      優就業:ujiuye

      關注中公優就業官方微信

      • 關注微信回復關鍵詞“大禮包”,享學習福利
      QQ交流群
      在線疑問解答
      (加群備注“網站”)
      IT培訓交流群 加入群聊 +
      軟件測試 加入群聊 +
      全鏈路UI/UE設計 加入群聊 +
      Python+人工智能 加入群聊 +
      互聯網營銷 加入群聊 +
      Java開發 加入群聊 +
      PHP開發 加入群聊 +
      VR/AR游戲開發 加入群聊 +
      大前端 加入群聊 +
      大數據 加入群聊 +
      Linux云計算 加入群聊 +
      優就業官方微信
      掃碼回復關鍵詞“大禮包”
      享學習福利

      測一測
      你適合學哪門IT技術?

      1 您的年齡

      2 您的學歷

      3 您更想做哪個方向的工作?

      獲取測試結果
       
      課程資料、活動優惠 領取通道
       
       
      日本一本二本三本av网站,一本加勒比HEZYO东京热高清,一本久久A久久精品综合