计数增加2,预计1

时间:2015-11-28 04:47:14

标签: go

我正在按照书中的例子。它假设在键入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中的某些功能吗?

1 个答案:

答案 0 :(得分:3)

Chrome会自动尝试获取图标,再次增加计数器

您可以按F12并在加载页面之前转到“网络”标签来查看:

enter image description here

(这是Chrome开发工具的一部分:https://developers.google.com/web/tools/chrome-devtools/

为了测试那些确切的代码,我建议使用curl:curl -XGET http://localhost:8080/