HTTP相關

HTTP中的方法
  • HTTP1.0定義了三種請求?法: GET, POST 和 HEAD?法
  • HTTP1.1新增了五種請求?法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT
這些方法的作用:
  • GET: 通常?于請求服務器發送某些資源
  • POST: 發送數據給服務器
  • HEAD: 請求資源的頭部信息, 并且這些頭部與 HTTP GET ?法請求時返回的?致. 該請求?法的?個使?場景是在 下載?個??件前先獲取其??再決定是否要下載, 以此可以節約帶寬資源
  • OPTIONS: ?于獲取?的資源所?持的通信選項
  • PUT: ?于新增資源或者使?請求中的有效負載替換?標資源的表現形式
  • DELETE: ?于刪除指定的資源
  • PATCH: ?于對資源進?部分修改 CONNECT: HTTP/1.1協議中預留給能夠將連接改為管道?式的代理服務器 TRACE: 回顯服務器收到的請求,主要?于測試或診斷
GET和POST的區別
  • 數據傳輸?式不同:GET請求通過URL傳輸數據,?POST的數據通過請求體傳輸。
  • 安全性不同:POST的數據因為在請求主體內,所以有?定的安全性保證,?GET的數據在URL中,通過歷史記錄,緩存很容易查到數據信息。
  • 數據類型不同:GET只允許 ASCII 字符,?POST?限制
  • GET?害: 刷新、后退等瀏覽器操作GET請求是?害的,POST可能重復提交表單
http的請求報?和響應報文
  • 請求報文:由四部分組成
    • 請求行、請求頭、空行、請求體
  • 響應報文:
    • 響應行、響應頭、空行、響應主體
HTTP的狀態碼
  • 2XX 成功
    • 200 OK,表示從客戶端發來的請求在服務器端被正確處理
    • 201 Created 請求已經被實現,?且有?個新的資源已經依據請求的需要?建?
    • 202 Accepted 請求已接受,但是還沒執?,不保證完成請求
    • 204 No content,表示請求成功,但響應報?不含實體的主體部分
    • 206 Partial Content,進?范圍請求
  • 3XX 重定向
    • 301 moved permanently,永久性重定向,表示資源已被分配了新的 URL
    • 302 found,臨時性重定向,表示資源臨時被分配了新的 URL
    • 303 see other,表示資源存在著另?個 URL,應使? GET ?法丁?獲取資源
    • 304 not modified,表示服務器允許訪問資源,但因發?請求未滿?條件的情況
    • 307 temporary redirect,臨時重定向,和302含義相同
  • 4XX 客戶端錯誤
    • 400 bad request,請求報?存在語法錯誤
    • 401 unauthorized,表示發送的請求需要有通過 HTTP 認證的認證信息
    • 403 forbidden,表示對請求資源的訪問被服務器拒絕
    • 404 not found,表示在服務器上沒有找到請求的資源
    • 408 Request timeout, 客戶端請求超時
    • 409 Confict, 請求的資源可能引起沖突
  • 5XX 服務器錯誤
    • 500 internal sever error,表示服務器端在執?請求時發?了錯誤
    • 501 Not Implemented 請求超出服務器能?范圍,例如服務器不?持當前請求所需要的某個功能,或者請求是服務 器不?持的某個?法
    • 503 service unavailable,表明服務器暫時處于超負載或正在停機維護,?法處理請求
    • 505 http version not supported 服務器不?持,或者拒絕?持在請求中使?的 HTTP 版本
HTTP的keep-alive作用:

在早期的HTTP/1.0中,每次http請求都要創建?個連接,?創建連接的過程需要消耗資源和時間,為了減少資源消耗, 縮短響應時間,就需要重?連接。在后來的HTTP/1.0中以及HTTP/1.1中,引?了重?連接的機制,就是在http請求頭中 加?Connection: keep-alive來告訴對?這個請求響應完成后不要關閉,下?次咱們還?這個請求繼續交流。協議規定HTTP/1.0如果想要保持?連接,需要在請求頭中加上Connection: keep-alive。

keep-alive的優點:
  • 較少的CPU和內存的使?(由于同時打開的連接的減少了)
  • 允許請求和應答的HTTP管線化
  • 降低擁塞控制 (TCP連接減少了)
  • 減少了后續請求的延遲(?需再進?握?)
  • 報告錯誤?需關閉TCP連
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • HTTP 是一種超文本傳輸協議(Hypertext Transfer Protocol),HTTP 是一個在計算機...
    沒糖_cristalle閱讀 454評論 0 0
  • 原文地址 HTTP協議 在 OSI 七層模型中,HTTP協議位于最頂層的應用層中。通過瀏覽器訪問網頁就直接使用了 ...
    gyl_coder閱讀 435評論 0 0
  • 首先列出七層協議(惡補了大學所逃的計算機網絡??)計算機七層協議:物理層 數據鏈路層 網絡層 傳輸層 會話層 表示層...
    野蠻生長_ed2e閱讀 564評論 0 1
  • 一. 什么是HTTP HTTP協議工作在應用層,端口號是80。HTTP協議被用于網絡中兩臺計算機間的通信,相比于T...
    cunfate閱讀 379評論 0 0
  • 1.你都了解那些狀態嗎,他們的含義是什么 2.建立HTTP連接流程 http & https & 網絡請求過程 3...
    Rumbles閱讀 381評論 0 0