發表文章

目前顯示的是 5月, 2019的文章

使用Golang串接哈哈姆特

圖片
文章最下面有原碼 首先建立一個http server func main() { //開啟伺服器 http.HandleFunc("/", handler) port := os.Getenv("PORT") if port == "" { log.Fatal("$PORT must be set") } address := ":" + port log.Println("Starting server on address", address) err := http.ListenAndServe(address, nil) if err != nil { panic(err) } } 根據Golang的 HandleFunc 的官方文件,建立一個handler func handler(w http.ResponseWriter, r *http.Request) { // Do: 結束後執行 關閉httpRequest defer r.Body.Close() // Do: Read body b, err := ioutil.ReadAll(r.Body) if err != nil { http.Error(w, err.Error(), 500) return } // Do: 傳回200 request200(w) // Do: 驗證簽章 err = verifyWebhook(r, b) if err != nil { http.Error(w, err.Error(), 500) return } //