【发布时间】:2019-11-20 19:01:19
【问题描述】:
我正在制作一个 iOS 应用程序与 Mqtt 代理通信,主要是发布消息。但是当我尝试使用 CocoaMQTT 库与代理连接时,它总是给我连接错误。
我正在尝试使用 CocoaMQTT 最新版本和 1.1.3 版本。但是两者都连接失败并给我错误
(Error Domain=kCFStreamErrorDomainNetDB Code=8 "nodename or servname 提供,或未知” UserInfo={NSLocalizedDescription=nodename nor servname 提供,或未知})
formatter.dateFormat = "yyyy-MM-dd HH:mm:ss.SSS"
let dateString = formatter.string(from: date)
let clientID = "smart-curtain-"+dateString
mqttClient = CocoaMQTT.init(clientID: clientID, host:
contantData.MQTT_BROKER_URL, port: UInt16(1883))
mqttClient.username = nil
mqttClient.password = nil
mqttClient.autoReconnect = true
mqttClient.allowUntrustCACertificate = true
mqttClient.keepAlive = 60
mqttClient.enableSSL = false
所以它总是以mqttDidDisconnect 委托方法结束。我的代理 url 是 tcp://xyz.com(xyz 只是示例),端口是 1883。我已经尝试从我的 iPhone 上使用 2-3 个 Mqtt 收费应用程序来连接代理详细信息,但没有人能够连接它。
但相同的设置在 Android 应用中运行良好。 (它使用的是 net.igenius:mqttservice:1.6.4)(这个代理不需要认证)
【问题讨论】: