Go-net/http-func Handle

来自泡泡学习笔记
BrainBs讨论 | 贡献2024年2月2日 (五) 09:09的版本 (创建页面,内容为“ Handle 在 DefaultServeMux 中为给定模式注册处理器。 <syntaxhighlight lang="go">func Handle(pattern string, handler Handler)</syntaxhighlight> <br> <syntaxhighlight lang="go">package main import ( "fmt" "log" "net/http" "sync" ) type countHandler struct { mu sync.Mutex // guards n n int } func (h *countHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) { h.mu.Lock() defer h.mu.Unlock() h.n++ fmt.…”)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳到导航 跳到搜索

Handle 在 DefaultServeMux 中为给定模式注册处理器。

func Handle(pattern string, handler Handler)


package main

import (
    "fmt"
    "log"
    "net/http"
    "sync"
)

type countHandler struct {
    mu sync.Mutex // guards n
    n  int
}

func (h *countHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
    h.mu.Lock()
    defer h.mu.Unlock()
    h.n++
    fmt.Fprintf(w, "count is %d\n", h.n)
}

func main() {
    http.Handle("/count", new(countHandler))
    log.Fatal(http.ListenAndServe(":8080", nil))
}