目录
创建一个HTTP服务端
其实Go语言创建一个简单的HTTP服务器程序,与Java Web的servlet差不多。比如,我们这里创建一个简单打印“Hello World”的程序。代码如下:
package main
import (
"fmt"
"net/http"
)
func helloworld(w http.ResponseWriter,r *http.Request) {
fmt.Fprintf(w,"Hello World")
}
func main() {
server :=&http.Server{
Addr: "127.0.0.1:80",
}
http.HandleFunc("/",helloworld)
server.ListenAndServe()
}
运行之后,在浏览器的网页输入框中输入127.0.0.1就会出现“Hello World”的简单网页。
这里,我们可以发现,如果需要通过Go语言创建一个服务器,就需要了解net/http包的内部逻辑。我们只看main()函数中的代码,会发现其调用了HandleFunc()函数以及ListenAndServe()函数。
ListenAndServe()
在Go语言中,ListenAndServe()函数有2个参数,第一个为监听的端口号,第二个为事件处理器handler。而handler接口的定义如下:
type Handler interface{
ServerHTTP(ResponseWriter,