Go語言http包簡易入門

2022-09-22 06:09:12 字數 1511 閱讀 6320

說道go語言web程式設計,必不可少的會使用到net/http包。go語言將web開發需要使用到的很多內容都放在了標準庫中——net/http。

如何寫乙個簡單的web程式很容易。如下:

其中使用了http包。使用http.handlefunc就是使用了乙個處理器函式。

處理器函式是乙個簽名和servehttp方法相同的函式,go語言中,有一種handlerfunc函式型別,可以加將這個函式轉化為帶有方法的處理器(handler)?

servermux是乙個路由管理器,也可以說是乙個多路復用器,使用方式如下:

其實是在使用http.handlefunc的時候,呼叫了

1 func handlefunc(pattern string, handler func(responsewriter, *request))

這樣的話,其實是使用了乙個變數defaultservemux,再看看這個變數的內容:

1 var defaultservemux = &defaultservemux

2 var defaultservemux servemux

這個變數其實就是servemux的例項。也就是servemux,所以在使用http的handerfunc的時候,是使用了這個多路復用器的。這個處理器也是預設的處理器。如果沒有宣告或者直接使用其他的處理器的時候,呼叫處理器函式和處理器都是使用了這個。

接下來看handlefunc這個函式,以上使用的http包的函式handlefunc最終呼叫的是servemux的handlefunc。所以在使用的時候handle和handlefunc完全一致。

type handlerfunc func(responsewriter, *request)

handlefunc最終會將函式轉成handlefunc,等同於handler,handler是乙個介面,如下:

1 type handler inte***ce

所以其實這兩種型別是等價的。

GO語言入門10 建立包

go語言建立包和使用包 新建乙個directory 新建乙個go檔案mypack.go mypack.go的內容如下 package mypackage import fmt func myfunc 在主函式main中匯入這個包和使用這個函式package main 固定 import hellow...

go 語言入門

參見文章1,文章2 1.編譯 go build test.go 2.執行 go run test.go 3.看幫助 go doc builtin go doc fmt fnv4.執行測試 編寫源 even.go this package is test for write package packa...

go語言入門

目錄go命令 apt install golang yum install golang y 新增環境變數,使用一下命令測試安裝是否成功 go versiongo help就像其他靜態型別語言一樣,要執行 go 程式,需要先編譯,然後在執行產生的可執行檔案。go build命令就是用來編譯 go程式...