为了账号安全,请及时绑定邮箱和手机立即绑定

使用 url 包更新 ThingSpeak 上的频道

使用 url 包更新 ThingSpeak 上的频道

Go
尚方宝剑之说 2021-07-09 15:00:12
我在 Raspberry Pi 上使用以下部分代码,以便将采样的 [温度和湿度] 值连续上传到 ThingSpeak [https://www.thingspeak.com/] 的通道上。问题是只有第一个值被上传而其余的被忽略。我究竟做错了什么?values.Set 创建一个之前未创建的键,为其分配第一个值并替换每个下一个值,没有任何问题。为什么不上传?http.PostForm 有什么问题吗?//importstype Data struct {    Temperature int    Humidity    int}//....var data Datafunc httpPost(values url.Values) {    values.Set("field1", fmt.Sprint(data.Temperature))    values.Set("field2", fmt.Sprint(data.Humidity))    log.Println(values)    _, err := http.PostForm("http://api.thingspeak.com/update", values)    if err != nil {        log.Printf("error posting values to thingspeak: %s", err)    }    return}//....func main() {    dataPool := []Data{{28, 41}, {24, 43}, {27, 42}, {21, 40}}    values := make(url.Values)    values.Set("key", "Write API Key")    for _, value := range dataPool {        data = value        //ThingSpeak update        httpPost(values)        time.Sleep(2 * time.Second)    } }我不太了解网络,但现在我通过以太网端口访问互联网,该端口连接到基于集线器的卫星互联网连接 [我猜不是普通的路由器连接?] 所以也许这是一个管理问题 [宿舍,呃] . 我应该询问我的网络管理员,但无论如何我都会把它放在这里。欢迎任何反馈。
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 213 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信