Golang net.http 包详解
net/http
包是 Go 语言标准库中负责 HTTP 客户端和服务端的实现。以下是一些常用的函数和类型:
http.ListenAndServe
- 启动 HTTP 服务器,在指定的地址上监听并接收请求。http.Get
- 发送 GET 请求到指定的 URL。http.Request
- 表示 HTTP 请求的结构体,包含请求方法、头部、体等信息。http.Response
- 表示 HTTP 响应的结构体,包含状态码、头部、体等信息。http.Handle
和http.HandleFunc
- 注册路由处理函数,分别用于处理通过http.Request
进行的 HTTP 请求。http.ListenAndServeTLS
- 启动 HTTPS 服务器。
示例代码:
package main
import (
"fmt"
"log"
"net/http"
)
func helloHandler(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hello, World!")
}
func main() {
http.HandleFunc("/hello", helloHandler)
log.Println("Starting server on :8080")
err := http.ListenAndServe(":8080", nil)
if err != nil {
log.Fatal(err)
}
}
这段代码创建了一个简单的 HTTP 服务器,监听 8080 端口,并对 "/hello" 路径的请求使用 helloHandler
函数进行处理。当访问 http://localhost:8080/hello 时,服务器将响应 "Hello, World!"。
评论已关闭