学习目标:
实现go语言下gin框架与EMQX搭建的MQTT Server的连接、订阅、推送、断开等操作
开发工具:
Win10 + goland
正式操作:
1、goLand下创建新功能 ginMqttClientTestProject,并且重新安装gin框架
go get -u github.com/gin-gonic/gin
go mod init gin
go mod edit -require github.com/gin-gonic/gin@latest
2、安装mqtt client服务
go get github.com/eclipse/paho.mqtt.golang
3、添加如下代码,注意修改连接地址,client_id主题
package main
import (
"fmt"
"time"
"github.com/eclipse/paho.mqtt.golang"
)
//订阅回调函数;收到消息后会执行它
var f mqtt.MessageHandler = func(client mqtt.Client, msg mqtt.Message) {
fmt.Printf("TOPIC: %s\n", msg.Topic())
fmt.Printf("MSG: %s\n", msg.Payload())
}
func main() {
//此处我是以ws方式接入的,请添你自己代理服务器的公网ip ,这里只是举例
opts := mqtt.NewClientOptions().AddBroker("ws://XX.XX.XX.63:8083/mqtt")
o