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个知识点)

接口(interface) (1个知识点)

指针 (1个知识点)

错误处理 (1个知识点)

包管理 (1个知识点)

并发:goroutine (1个知识点)

并发:channel (1个知识点)

同步原语 (1个知识点)

网络与 HTTP (1个知识点)

测试与性能 (1个知识点)

反射与泛型 (1个知识点)

CGO 与汇编 (1个知识点)

Web 框架 (1个知识点)

数据库操作 (1个知识点)

配置与日志 (1个知识点)

部署与运维 (1个知识点)

使用说明

  • • 本手册涵盖 Go 语言从基础到并发实战、Web 服务的完整知识体系
  • • 在搜索框输入关键词,快速定位相关知识点
  • • 点击条目标题进入详情页,查看详细说明与代码示例
  • • 页面按分类展示所有知识点,方便系统性学习
  • • 建议安装 Go 环境并使用 VS Code 或 GoLand 进行实践