我正在尝试使用频道将时间推送到浏览器,所以我写了以下内容:
package main
import (
"net/http"
"time"
)
type DataPasser struct {
logs chan string
}
func main() {
passer := &DataPasser{logs: make(chan string)}
go func() {
for {
passer.logs <- time.Now().String()
}
}()
http.HandleFunc("/", passer.handleHello)
http.ListenAndServe(":9999", nil)
}
func (p *DataPasser) handleHello(w http.ResponseWriter, r *http.Request) {
for {
w.Write([]byte(<-p.logs))
}
/* for {
io.WriteString(w, <-p.logs)
}
*/
}
它通过在每个新时间不断添加新行来工作,如下所示:
我需要的是单行,每次服务器向它发送时间时,它都会被清除并替换为新时间?有帮助吗?
繁星点点滴滴
相关分类