1. 程式人生 > 其它 >gradle配置maven倉庫

gradle配置maven倉庫

1. 網路7層模型

OSI -- Open System Interconnection

背景: 制定的一個用於計算機或通訊系統間互聯的標準體系

2. 網路5層模型

3. http發展歷史

  • Http 0.9 -- 只有一個Get方法,沒有head描敘資料資訊
  • Http 1.0 -- 新增POST DELETE PUT HEAD 等方法 + header部分 + status code(服務端處理該請求響應的狀態)
  • Http 1.1 -- 長連線 + pipeline(可以同時多個請求,但序列處理) + host
  • Http 2.0 -- 資料以二進位制傳送,壓縮頭部與伺服器主動推送,同一個連線裡傳送多個請求可以並行處理

4. Http請求原理

  • http請求是建立在TCP連線之上的

5. URL

Uniform Resoure Locator -- 同一資源定位符
http://ip:port/path?query=string#hash

  • ip -- 伺服器主機IP地址或對應的域名
  • Port -- 提供Web服務程式監聽埠
  • /path -- 資源路徑 -- restful風格中是名詞 -- 類似檔案系統目錄結構
  • ?query=string& -- query string GET方法使用的查詢引數
  • hash -- 錨點 -- 瀏覽器視窗定位到頁面的某個區域

6. 報文

  • 請求報文
    • Method 請求的方法 -- restful語義:
      1. GET -- 查詢
      2. POST -- 新增
      3. PUT -- 修改多個記錄
      4. PATCH -- 修改單個記錄
      5. DELETE -- 刪除記錄
  • 響應報文
    • Http code -- 定義伺服器對請求處理的結果
  1. Demo
package main

import (
   "log"
   "net/http"
)

func main() {
   // 定義路由
   http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
      n, err := w.Write([]byte("ok"))
      if err != nil {
         log.Println(err)
      }
      log.Println(n)
   })

   // 啟動http服務
   err := http.ListenAndServe(":8888", nil)
   if err != nil {
      log.Fatalln(err)
   }
}
  • ISO -- 國際標準化組織