iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 4
0

Golang套件中有標準內件的http package,這邊將用"net/http"來介紹如何建立簡易的http server

下圖為http server處理的流程圖:
https://ithelp.ithome.com.tw/upload/images/20200906/20129762lpiDWyyLT8.png

net/http

建立簡單的Http Server系統。

package main

import (
	"log"
	"net/http"
)

func ping(w http.ResponseWriter, r *http.Request) {
    //處理邏輯
	w.Write([]byte("ping ok"))
}

func main() {
    //使用http.HandleFunc註冊路徑 
	http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
        //處理邏輯
		w.Write([]byte("Hello World!!"))
	})
	http.HandleFunc("/ping", ping) //註冊路徑
	log.Fatal(http.ListenAndServe(":8080", nil))
}

解說一下上面程式的內容

  • 系統經由http.ListenAndServe,來監聽8080的port。
  • 收client端請求,會根據在http.HandleFunc註冊的路徑,尋找對應的Handler來處理任務。
  • 啟動系統,在瀏覽器輸入
    • "127.0.0.1:8080/"就可看到 Hello World!!
    • "127.0.0.1:8080/ping"就可看到 ping ok

上一篇
Day3 Golang指令操作
下一篇
Day5 gRPC (1) ProtoBuf
系列文
微服務系統建置與監控30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言