Go 语言学习手册
免费学习
完整知识体系
快速检索
Go语言学习手册《HTTP 客户端与服务端》:Go 标准库 `net/http` 提供了完整的 HTTP 客户端和服务端实现。 **简单的 HTTP 服务端:** ```go package main import ( "fmt" "net/http" ) func ...
网络与 HTTP
HTTP 客户端与服务端
【详细说明 & 代码示例】
Go 标准库 `net/http` 提供了完整的 HTTP 客户端和服务端实现。
**简单的 HTTP 服务端:**
```go
package main
import (
"fmt"
"net/http"
)
func handler(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hello, %s!", r.URL.Path[1:])
}
func main() {
http.HandleFunc("/", handler)
http.ListenAndServe(":8080", nil)
}
```
**路由和中间件:** 可使用 `http.NewServeMux` 或第三方库(如 gorilla/mux)。
**HTTP 客户端:**
```go
resp, err := http.Get("https://api.example.com/data")
if err != nil { ... }
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
```
**POST 请求:**
```go
resp, err := http.Post("https://httpbin.org/post", "application/json",
strings.NewReader(`{"key":"value"}`))
```
**自定义 Client:**
```go
client := &http.Client{
Timeout: 10 * time.Second,
}
req, _ := http.NewRequest("GET", "url", nil)
req.Header.Set("Authorization", "Bearer token")
resp, err := client.Do(req)
```
**注意:** 关闭响应体(`defer resp.Body.Close()`)避免资源泄漏。
学习提示:建议安装 Go 环境(go.dev/dl),使用 VS Code 或 GoLand 编写代码,并熟练使用 go run、go build、go mod 等命令。
全部章节目录(共 30 个知识点)
Go 基础 (1个知识点)
变量与数据类型 (2个知识点)
控制流程 (2个知识点)
结构体与方法 (2个知识点)
接口(interface) (1个知识点)
指针 (1个知识点)
错误处理 (1个知识点)
包管理 (1个知识点)
并发:goroutine (1个知识点)
并发:channel (1个知识点)
同步原语 (1个知识点)
标准库 (2个知识点)
网络与 HTTP (1个知识点)
测试与性能 (1个知识点)
反射与泛型 (1个知识点)
CGO 与汇编 (1个知识点)
Web 框架 (1个知识点)
数据库操作 (1个知识点)
配置与日志 (1个知识点)
部署与运维 (1个知识点)
设计模式 (2个知识点)
进阶技巧 (2个知识点)
使用说明
- • 本手册涵盖 Go 语言从基础到并发实战、Web 服务的完整知识体系
- • 在搜索框输入关键词,快速定位相关知识点
- • 点击条目标题进入详情页,查看详细说明与代码示例
- • 页面按分类展示所有知识点,方便系统性学习
- • 建议安装 Go 环境并使用 VS Code 或 GoLand 进行实践