表单处理

1. 解析表单数据

func handler(w http.ResponseWriter, r *http.Request) {
    err := r.ParseForm()
    if err != nil {
        http.Error(w, "ParseForm() error", http.StatusBadRequest)
        return
    }
    name := r.FormValue("name")
    fmt.Fprintf(w, "Hello, %s!", name)
}

`

2. 获取 URL 查询参数

query := r.URL.Query()
id := query.Get("id")

3. 处理 POST 表单

支持 application/x-www-form-urlencodedmultipart/form-data

4. 表单验证(简单示例)

if name == "" {
    http.Error(w, "Name is required", http.StatusBadRequest)
    return
}

表单处理是实现用户交互和数据提交的关键步骤。