gpt4 book ai didi

go - HandleFunc 被调用两次

转载 作者:IT王子 更新时间:2023-10-29 01:21:55 26 4
gpt4 key购买 nike

我正在关注 simple web server example在围棋中。

我插入了一条 log 语句,结果代码如下所示:

package main

import (
"io"
"log"
"net/http"
)

func hello(w http.ResponseWriter, r *http.Request) {
io.WriteString(w, "Hello world!")
log.Println("hello.")
}

func main() {
mux := http.NewServeMux()
mux.HandleFunc("/", hello)
http.ListenAndServe(":8000", mux)
}

问题是每当我在我的网络浏览器中加载端口 8000 时,这个函数就会被调用两次。这是一个问题,因为我打算在每次访问页面时增加一个计数器。通过这种行为,计数器会增加两次。 OTOH,如果我执行 curl localhost:8000,它只会被调用一次。

我觉得我在这里错过的东西真的很愚蠢。

最佳答案

只需记录请求。您会发现您的浏览器也请求/favicon.ico。

参见 https://en.wikipedia.org/wiki/Favicon获取更多信息。

关于go - HandleFunc 被调用两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33432192/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com