go 如何实现一个基本的 http 服务?
在 Go 中创建一个基本的 HTTP 服务非常简单,使用标准库中的 net/http
包即可。
下面是一个基本的示例,
演示如何在 Go 中创建一个简单的 HTTP 服务:
D:\_go\04-http
下创建 main.go
- main.go
package main
import (
"fmt"
"net/http"
)
func main() {
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hello, World!")
})
fmt.Println("Server started on :8080")
http.ListenAndServe(":8080", nil)
}
在上述示例中,我们首先导入了 net/http
包,然后使用 http.HandleFunc
函数定义一个处理函数,该函数将会在用户访问根路径时被调用,向客户端返回 “Hello, World!”。
接着,我们使用 http.ListenAndServe
函数启动一个 HTTP 服务器,监听在本地的 8080 端口上,并将请求交给之前定义的处理函数进行处理。
在命令行中,你可以进入包含该代码文件的目录,然后运行:
go run main.go
这将会启动一个 HTTP 服务器,你可以在浏览器或工具如 curl 中访问 http://localhost:8080
来查看 “Hello, World!” 的响应。
这只是一个简单的示例,你可以通过添加更多的处理函数和路由来构建更复杂的 HTTP 服务,处理不同的 URL 路径和请求方法。
参考资料
https://go.dev/doc/tutorial/add-a-test
https://www.techdatao.com/article/detail/57.html
https://go.dev/doc/tutorial/web-service-gin