导航菜单

Go语言/HTTP服务开发
课程进度 71% · 第17/23章17/23章 · 标签 1/4
1

HTTP基础

Go内置net/http包,支持高效的HTTP服务开发。

go
1
import ("net/http"; "fmt")
2
 
3
func main() {
4
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
5
fmt.Fprintln(w, "Hello, World!")
6
})
7
http.ListenAndServe(":8080", nil)
8
}
  • http.HandleFunc注册路由
  • http.ListenAndServe启动服务
  • 支持GET、POST等多种HTTP方法
2

路由与处理器

Go原生支持简单路由,复杂路由可用第三方库。

go
1
import ("net/http"; "github.com/gorilla/mux")
2
func main() {
3
r := mux.NewRouter()
4
r.HandleFunc("/user/{id}", func(w http.ResponseWriter, r *http.Request) {
5
vars := mux.Vars(r)
6
w.Write([]byte("User ID: " + vars["id"]))
7
})
8
http.ListenAndServe(":8080", r)
9
}
net/httpHandleFuncListenAndServemux路由