mqtt与socket的区别
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mqtt与socket的区别相关的知识,希望对你有一定的参考价值。
参考技术A mqtt与socket的区别主要有:1.mqtt协议是为计算能力有限,并且在低带宽、不可靠网络下工作的远程传感器、控制设备通讯而设计,而WebSocket则是为了浏览器与服务器全双工通信而设计;
2.mqtt是IBM开发的即时通讯协议,而Socket是基于TCP的一种应用层网络协议。
Flutter mqtt,代理未响应连接
以前我在网络上尝试过mqtt,但可以,但是在飞镖颤动中不起作用。
iam使用lib mqtt_client: 5.5.3
连接到我的本地wifi mqtt服务器。
我试图将以下MQTT的配置与网络上的配置相匹配。
这是我的配置
String identifier = "useridentifier";
String username = "theuser";
String password = "thepassword";
Socket._client = MqttClient('ws://192.168.0.49/', identifier);
Socket._client.keepAlivePeriod = 10;
Socket._client.port = 80;
Socket._client.logging(on: true);
Socket._client.useWebSocket = true;
Socket._client.websocketProtocols = ['mqtt'];
MqttConnectMessage connectMessage = MqttConnectMessage()
.withWillTopic("WillMsg")
.withWillMessage("SocketConsume closed abnormally..!")
.withWillQos(MqttQos.exactlyOnce)
.keepAliveFor(10)
.withProtocolVersion(4)
.withProtocolName('MQTT')
.authenticateAs(username, password);
Socket._client.connectionMessage = connectMessage;
try {
await Socket._client.connect();
Socket._subscription = Socket._client.updates.listen(Socket.onMessage);
} catch (e) {
print("error: " + e.toString());
}
我总是无法连接并获取日志
错误:mqtt-client NoConnectionException:超出了允许的最大连接尝试次数({3})。代理未响应连接请求消息(缺少连接确认)>
下面是标题和变量标题
I / flutter(10188):标头:MessageType = MqttMessageType.connect,重复=否,保留=否,Qos = MqttQos.atMostOnce,大小= 372I / flutter(10188):连接变量头:ProtocolName = MQTT,ProtocolVersion = 4,ConnectFlags = Connect标志:Reserved1 = false,CleanStart = false,WillFlag = true,WillQos = MqttQos.exactlyOnce,WillRetain = false,PasswordFlag = true, UserNameFlag = true,KeepAlive = 10。
任何人都可以解决这个问题。抱歉我的英语不好
[以前,我在网络上尝试过mqtt,但效果很好,但在飞镖颤动中却无效。使用lib mqtt_client的iam:5.5.3连接到本地wifi mqtt服务器。我试图将以下MQTT的配置与...
我有同样的问题。您现在已经解决了,如何解决]
以上是关于mqtt与socket的区别的主要内容,如果未能解决你的问题,请参考以下文章
MQTT和ActiveMQ有啥区别?wmqtt.jar和mqttv3.jar又有啥区别