无法通过GO

时间:2019-11-28 16:50:17

标签: go mqtt paho

我有以下问题: 我可以使用Java而不是go来发布到mqtt代理。

Java代码:

public static void main(String[] args) {

        [...]

        MqttMessage message = new MqttMessage(jsonString.getBytes());
        message.setQos(qos);
        sampleClient.publish(topic, message);
}

GO中的代码

func main() {

    // Start the connection
    c := MQTT.NewClient(opts)
    if token := c.Connect(); token.Wait() && token.Error() != nil {
            panic(token.Error())
    }

    payload:= "test"

    if token := c.Publish("topic", 2, true, payload); token.Wait() && token.Error() != nil {
             fmt.Println(token.Error())
    }
}

更新:它必须是有效负载。在Java中,我有这个:

    String jsonString= "{\"stream\":\"temperatura2\",\r\n" + 
            "\"sensor\":\"ec6c613a-66b4-4584-fb37-5f7cac130f7d\",\r\n" + 
            "\"values\":[{\"time\":\"2019-03-10T11:30:00Z\",\"components\":{\"alfanum\":\"99.0\"}}]}\r\n";

我不确定如何在go中定义正确的有效载荷:

 payload := []byte(`{\"stream\":\"temperatura2\",\r\n" +
            "\"sensor\":\"ec6c613a-66b4-4584-fb37-5f7cac130f7d\",\r\n" +
            "\"values\":[{\"time\":\"2019-11-28:30:00Z\",\"components\":{\"alfanum\":\"1.0\"}}]}`)

0 个答案:

没有答案