计数增加 2,期望为 1

我正在遵循书中的示例。它假设在键入http://localhost:8080/xxx时增加计数并在键入http://localhost:8080/ count 时返回计数


代码如下


var count int

var mu sync.Mutex

func main() {

        http.HandleFunc("/", handler)

        http.HandleFunc("/count", counter)

        log.Fatal(http.ListenAndServe("localhost:8080", nil))

}

func handler(w http.ResponseWriter, req *http.Request) {

        mu.Lock()

        fmt.Fprintf(w, "Count before: %d\n", count)

        count++

        fmt.Fprintf(w, "Count after: %d\n", count)

        mu.Unlock()

        fmt.Fprintf(w, "URL.Path = %q\n", req.URL.Path)

}

func counter(w http.ResponseWriter, req *http.Request) {

        mu.Lock()

        fmt.Fprintf(w, "Count: %d\n", count)

        mu.Unlock()

}

但是,当我打开http://localhost:8080并刷新时,计数每次增加 2 而不是 1。这是 Chrome 中的某些功能吗?


SMILET
浏览 158回答 1
1回答

慕姐4208626

Chrome 会自动尝试获取 favicon,第二次增加计数器您可以在加载页面之前按 F12 并转到“网络”选项卡来查看它:(这是 Chrome 开发工具的一部分:https : //developers.google.com/web/tools/chrome-devtools/)为了测试那个确切的代码,我建议像这样使用 curl: curl -XGET http://localhost:8080/
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go