我在python中有一个mqtt用户,可以在不同的房间里监听ESP8266的温度。
当他们发布温度时,我使用以下内容将数据添加到firebase:
// msq.topic == room name
// msq.payload is the temperature
root.child(msq.topic).push(
{
'temperature' : msg.payload.decode("UTF-8"),
'date_time' : str(datetime.now()
}
)
什么是LEB9y19SraBRSGxamvp或它来自哪里? (以及其他唯一ID) 我可以将其更改为更有意义的内容,以便更容易从firebase获取数据吗?或者我可能设计得这么糟糕? 有没有人建议让它变得更好?
答案 0 :(得分:3)
这是您在致电package main
import (
"fmt"
"log"
"net/http"
"time"
)
func main() {
http.HandleFunc("/heartbeat", func(w http.ResponseWriter, r *http.Request) {
w.Header().Set("Content-Type", "text/event-stream")
w.Header().Set("Cache-Control", "no-cache")
w.Header().Set("Connection", "keep-alive")
flusher, ok := w.(http.Flusher)
if !ok {
http.Error(w, "your browser doesn't support server-sent events")
return
}
// Send a comment every second to prevent connection timeout.
for {
_, err := fmt.Fprint(w, ": ping")
if err != nil {
log.Fatal("client is gone, shutting down")
return
}
flusher.Flush()
time.Sleep(time.Second)
}
})
fmt.Println(http.ListenAndServe(":1323", nil))
}
时自动生成的唯一推送ID。如果您更愿意以其他方式编写数据,请提供您自己的ID并使用push()
来编写每个数据位,或者找出其他方式来表示它。