go語(yǔ)言的net/http包的使用非常的簡(jiǎn)單優(yōu)雅
(1)服務(wù)端
package main import ( "flag" "fmt" "net/http" ) func main() { host := flag.String("host", "127.0.0.1", "listen host") port := flag.String("port", "80", "listen port") http.HandleFunc("/hello", Hello) err := http.ListenAndServe(*host+":"+*port, nil) if err != nil { panic(err) } } func Hello(w http.ResponseWriter, req *http.Request) { p> w.Write([]byte("Hello World"))/p>}
http.HandleFunc用來(lái)注冊(cè)路徑處理函數(shù),會(huì)根據(jù)給定路徑的不同,調(diào)用不同的函數(shù)
http.ListenAndSercer監(jiān)聽(tīng)iP與端口,本機(jī)IP可以省略不寫,僅書寫冒號(hào)加端口,如http.ListenAndSercer(“:8080”, nil)
路徑處理函數(shù),參數(shù)必須為w http.ResponseWriter和 req *http.Request且不能有返回值
測(cè)試結(jié)果:成功
(2)客戶端
package main import ( "fmt" "io/ioutil" "net/http" ) func main() { response, _ := http.Get("http://localhost:80/hello") defer response.Body.Close() body, _ := ioutil.ReadAll(response.Body) fmt.Println(string(body)) }
測(cè)試結(jié)果:成功!
以上這篇go語(yǔ)言實(shí)現(xiàn)http服務(wù)端與客戶端的例子就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
標(biāo)簽:貴州 東營(yíng) 保定 常州 曲靖 許昌 吐魯番 德宏
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《go語(yǔ)言實(shí)現(xiàn)http服務(wù)端與客戶端的例子》,本文關(guān)鍵詞 語(yǔ)言,實(shí)現(xiàn),http,服務(wù),端,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。