日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

图解http

發布時間:2024/6/21 综合教程 40 生活家
生活随笔 收集整理的這篇文章主要介紹了 图解http 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、了解web及網絡基礎

  1.網絡基礎TCP/IP

    通常使用的網絡包括互聯網是在TCP/IP協議族的基礎上運作的,HTTP是屬于它內部的一個子集,

    不同的硬件,操作系統之間的通信需要一種規則,這種規則稱為協議(protocal);

  2.TCP/IP的分層管理

    TCP/IP分為四層:應用層、傳輸層、網絡層、數據鏈路層

    應用層:決定了向用戶提供應用服務時通信的活動;http協議處于該層

    傳輸層:提供處于網絡連接中的兩臺計算機之間的數據傳輸(TCP位于該層)

    網絡層: 處理在網絡上流動的數據包,數據包時網絡傳輸的最小數據單位(IP)

    鏈路層:用來處理連接網絡的硬件部分

    利用TCP/IP協議族進行通信時,會通過分層順序與對方進行通信,發送端從應用層往下走,接收端從鏈路層往上走

  3.一次完整的http請求過程

    

二、簡單的HTTP協議

  請求報文組成:請求方法、請求URI、協議版本、可選的請求首部字段、內容實體

  響應報文組成:協議版本、狀態碼、原因短語、響應首部字段、實體主體

三、HTTP狀態碼

  1XX: 接收的請求正在處理

  2XX: 請求正常處理完畢

  3XX: 重定向狀態碼

  4XX: 客戶端錯誤

  5XX: 服務器錯誤

  常見狀態碼:

    200: 請求成功返回內容

    204: 請求成功無內容返回

    206: 范圍請求

    301: 永久性重定向

    302: 臨時性重定向(會存在網址劫持的問題)

    303: 臨時性重定向,但明確表示客戶端應采用GET方法獲取資源

    304: 緩存

    307:臨時性重定向,會遵照瀏覽器標準,不會從POST變成GET

    400: 客戶端語法錯誤

    401:請求需要通過HTTP認證

    403: 未獲得訪問權限

    404: 服務器上無法找到請求的資源

    500: 服務器端執行請求時發生錯誤

    503: 服務器暫時處于超負載或正在停機維護

四、HTTP首部

  HTTP報文包括報文首部、空行、主體部分

  請求報文首部:請求行,請求首部字段,通用首部字段,實體首部字段,其他

  響應報文首部: 狀態行,響應首部字段,通用首部字段,實體首部字段,其他

五、確保安全的HTTPS

  HTTP的缺點

    1.通信使用明文(不加密),內容可能會被竊聽; 通過加密技術來解決

      通信的加密:HTTP協議中沒有加密機制,通過和SSL或TLS組合使用,建立安全通信線路,加密HTTP的通信內容;

      內容的加密:客戶端對HTTP報文進行加密處理后再發送請求

    2.不驗證通信方的身份,有可能遭遇偽裝;

      使用SSL不僅提供加密處理,還使用了證書的手段確定通信方

    3.無法證明報文的完整性,有可能被篡改

      通過MD5,PGP簽名驗證

  HTTP+加密+認證+完整性保護=HTTPS

  

  HTTPS:是添加了加密及認證機制的HTTP;HTTP+SSL

  SSL(安全套接層):是為網絡通信提供安全及完整性的一種安全協議

  

  常見的加密方法:

    共享秘鑰加密: 加密和解密同用一個密鑰的方式;

      優缺點:密鑰有可能被竊聽的風險,處理速度較快

    使用兩把密鑰的公開秘鑰加密: 發送密文的一方使用對方的公開秘鑰加密,對方收到被加密的信息后,使用自己的私有秘鑰進行解密

      優缺點: 秘鑰不會被竊聽,但處理速度要慢

    HTTPS采用混合加密機制

    HTTPS存在一些問題:當使用SSL時,處理速度變慢;

              SSL必須進行加密處理,在服務器和客戶端都需要進行加密和解密的運算處理,會更多地消耗服務器和客戶端的硬件資源,導致負載增強

              需要購買證書耗費財力

六、webSocket

  是什么:webSocket是一個html5的一個新特性,目的是為了在瀏覽器和服務器之間建立一個雙向通信的通道,服務器可以在任意時刻給瀏覽器發送消息。

  與傳統http的不同:http是一個請求-響應協議,必須由客戶端發起請求,服務器才能發送數據給瀏覽器

  請求格式如下:

  GET ws://localhost:3000/ws/chat HTTP/1.1
  Host: localhost
  Upgrade: websocket //協議升級
  Connection: Upgrade
  Origin: http://localhost:3000
  Sec-WebSocket-Key: client-random-string //是用于標識這個連接,并非用于加密數據;
  Sec-WebSocket-Version: 13
  
 創建 WebSocket 對象: 
  var Socket = new WebSocket(url, [protocol] );
 
 webSocket事件:
  Socket.onopen  連接建立時觸發
  Socket.onmessage  客戶端接收服務端數據時觸發
  Socket.onerror  通信發生錯誤時觸發
  Socket.onclose  連接關閉時觸發

 webSocket方法:
  Socket.send()  使用連接發送數據
  Socket.close()  關閉連接

七、常見的攻擊及加密方式
  xss(跨站腳本攻擊):在網站內嵌入惡意腳本,竊取用戶的cookie或者用戶信息
    攻擊方式:在提交表單時攻擊或者uri參數傳遞時攻擊
  CSRF(跨站請求偽造):攻擊者偽裝成已完成認證的用戶向第三方平臺發送惡意請求
    解決方案:設置cookie為httpOnly,驗證token
  SQL注入攻擊:通過非法的sql指令來操作數據庫
    解決方案:重要信息加密,md5
  DDOS攻擊:黑客通過程序控制大量的計算機,然后通過這個計算機群在同一個時間,發送大量的請求到目標服務器,從而達到服務器處理不過來,請求超時的情況
  


總結

以上是生活随笔為你收集整理的图解http的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。