Go-HTTP服务(二)

腾讯云

2023-04-27 10:40:03


(资料图片)

路由

在HTTP服务中,路由用于将请求分发到对应的处理函数中。Go语言的net/http包提供了多种路由方式,例如使用http.HandleFunc()方法和使用http.NewServeMux()方法。

使用http.HandleFunc()

使用http.HandleFunc()方法可以非常方便地注册路由和处理函数。这个方法会自动将路由和处理函数绑定在一起,并将路由和处理函数添加到路由器对象中。

func main() {    http.HandleFunc("/", handlerFunc)    http.ListenAndServe(":8080", nil)}

在上面的示例中,我们使用http.HandleFunc()方法将路由和处理函数绑定在一起,并将路由添加到路由器对象中。这个处理函数的功能和前面的示例中的处理函数相同。

使用http.NewServeMux()

使用http.NewServeMux()方法可以创建一个HTTP路由器对象,然后使用mux.HandleFunc()方法来注册路由和处理函数。

func main() {    mux := http.NewServeMux()    mux.HandleFunc("/", handlerFunc)    http.ListenAndServe(":8080", mux)}

在上面的示例中,我们首先创建了一个HTTP路由器对象,然后使用mux.HandleFunc()方法将路由和处理函数绑定在一起,并将路由添加到路由器对象中。

处理静态文件

在Web开发中,通常需要将一些静态文件(例如CSS、JavaScript、图片等)提供给客户端。在Go语言中,我们可以使用http.FileServer()方法来处理静态文件。

func main() {    mux := http.NewServeMux()    // 将静态文件目录和处理函数绑定在一起    mux.Handle("/static/", http.StripPrefix("/static/", http.FileServer(http.Dir("static"))))    // 注册路由和处理函数    mux.HandleFunc("/", handlerFunc)    http.ListenAndServe(":8080", mux)}

在上面的示例中,我们首先使用http.FileServer()方法创建一个静态文件服务器,并将静态文件目录和处理函数绑定在一起。然后,我们将路由和处理函数绑定在一起,并将路由添加到路由器对象中。

最新资讯

猜你喜欢

“疫”不容辞 火焰蓝的特殊“11·9”

2021-11

驴肉店里的培训班号称“考研包过”?济南警方侦破作弊案

2021-11

多地喊话!这类人拒不回国将注销户口!

2021-11

内蒙古民警暴雪中徒步8小时 寻回走失牛群

2021-11

浙江天台500多名视障者“重见天日”:好日子在光明中开启

2021-11

四川多所高校学子用“青春力量”助力疫情防控

2021-11

成都理工:三次全员核酸均为阴性 “三万人吃喝没人管”

2021-11

无辣不欢的年轻人 开始吃纯清汤火锅了?

2021-11