AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當前位置:首頁 > 科技  > 軟件

深入理解Go標準庫-HTTP-Server的啟動

來源: 責編: 時間:2023-11-01 09:18:07 267觀看
導讀如何用最少的代碼創建一個HTTP server?package mainimport ( "net" "net/http")func main() { // 方式1 err := http.ListenAndServe(":8080", nil) if err != nil { panic(err) }}點開http.ListenAndServe可以看到

如何用最少的代碼創建一個HTTP server?UhE28資訊網——每日最新資訊28at.com

package mainimport ( "net" "net/http")func main() { // 方式1 err := http.ListenAndServe(":8080", nil) if err != nil {   panic(err) }}

點開http.ListenAndServe可以看到函數只是創建了Server類型并調用server.ListenAndServe()UhE28資訊網——每日最新資訊28at.com

所以下面的和上面的代碼沒有區別UhE28資訊網——每日最新資訊28at.com

package mainimport ( "net" "net/http")func main() { // 方式2 server := &http.Server{Addr: ":8080"} err := server.ListenAndServe() if err != nil {  panic(err) }}

ListenAndServe()如其名會干兩件事UhE28資訊網——每日最新資訊28at.com

  • 監聽一個端口,即Listen的過程
  • 處理進入端口的連接,即Serve的過程

所以下面的代碼和上面的代碼也沒區別UhE28資訊網——每日最新資訊28at.com

package mainimport ( "net" "net/http")func main() { // 方式3 ln, err := net.Listen("tcp", ":8080") if err != nil {  panic(err) } server := &http.Server{} err = server.Serve(ln) if err != nil {  panic(err) }}

一張圖展示三種使用方式UhE28資訊網——每日最新資訊28at.com

圖片圖片UhE28資訊網——每日最新資訊28at.com

路由?no!Handler!

按上面的代碼啟動HTTP Server沒有太大意義,因為我們還沒有設定路由,所以無法正常響應請求UhE28資訊網——每日最新資訊28at.com

$ curl  127.0.0.1:8080 404 page not found

暫停思考一下,服務器返回404是因為沒有設定路由么?no,no,no,你需要轉變一下思維。服務器返回404不是因為我們沒有設置路由,而是因為沒有設置請求的處理程序,這個處理程序在Go中叫作:Handler!UhE28資訊網——每日最新資訊28at.com

type Handler interface { ServeHTTP(ResponseWriter, *Request)}

本文鏈接:http://www.tebozhan.com/showinfo-26-16258-0.html深入理解Go標準庫-HTTP-Server的啟動

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 快速入門Python Django模型實例!

下一篇: Tailwind CSS vs 現代CSS,Tailwind CSS 會像CSS-in-JS 一樣亡?

標簽:
  • 熱門焦點
Top