关于客户机未连接 (32104) 的处理

这篇具有很好参考价值的文章主要介绍了关于客户机未连接 (32104) 的处理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

JAVA开发过程中使用mqtt消息订阅和发布时会出现客户机未连接的报错,只要在订阅和发布的方法里添加创建链接就可以

/**

* 连接 MQTT

*/

public void connect() {

try {

System.err.println("clientid----------"+clientId);

client = new MqttClient(hostUrl, clientId, new MemoryPersistence());

// MQTT 连接选项

MqttConnectOptions connOpts = new MqttConnectOptions();

connOpts.setUserName(username);

connOpts.setPassword(password.toCharArray());

// 保留会话

connOpts.setCleanSession(true);

// 设置超时时间,单位秒

connOpts.setConnectionTimeout(timeout);

// 设置心跳时间,单位秒,表示服务器每隔1.5*20秒的时间向客户端发送心跳判断客户端是否在线

connOpts.setKeepAliveInterval(keepAlive);

// 设置回调

client.setCallback(new OnMessageCallback());

// 建立连接

client.connect(connOpts);

} catch (MqttException me) {

System.out.println("reason " + me.getReasonCode());

System.out.println("msg " + me.getMessage());

System.out.println("loc " + me.getLocalizedMessage());

System.out.println("cause " + me.getCause());

System.out.println("excep " + me);

me.printStackTrace();

}

}文章来源地址https://www.toymoban.com/news/detail-625675.html

/**

* 订阅

*

* @param topic 主题

*/

public void subscribe(String topic) {

try {

client.subscribe(topic, qos);

} catch (MqttException me) {

me.printStackTrace();

connect();

}

}

/**

* 消息发布

*

* @param topic 主题

* @param data 消息

*/

public void publish(String topic, String data) {

try {

MqttMessage message = new MqttMessage(data.getBytes());

message.setQos(1); // 消息服务质量等级

message.setRetained(true); // 保留消息

client.publish(topic, message);

} catch (MqttException me) {

me.printStackTrace();

connect();

}

}

/**

* 断开连接

*/

public void disconnect() {

try {

client.disconnect();

client.close();

} catch (MqttException me) {

me.printStackTrace();

}

}

到了这里,关于关于客户机未连接 (32104) 的处理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • VM虚拟机创建centos7 64位系统提示此主机不支持64位客户机操作系统,此系统无法运行

    本身系统是window10 64位专业版系统,理论上不应该不支持64位的。 最近安装docker开启了虚拟化hyper-v,关闭即可。 打开cmd(管理员打开),输入命令 重启系统即可

    2024年02月07日
    浏览(48)
  • MQTT 客户端出现连接订阅等问题时如何排查?

    大家好,这是一期社区专题 FAQ。我们整理了近期社区中关注度较高的问题,在这里进行统一汇总解答。 今后本系列内容将不定期推送,敬请关注。 同时,如果大家在使用 EMQX 的过程中遇到问题,欢迎通过以下方式进行解决: 查阅 EMQX 产品文档与博客文章。 如果在现有资料

    2023年04月20日
    浏览(41)
  • wxbit appinventor 使用MQTT客户端连接onenet时的坑

    在最近使用wxbit中的MQTT客户端时遇见一些小问题,在开始不知道具体怎么连接上自己的onenet产品,后面通过查阅资料解决了问题 写下这篇博客是为了记录相关问题 将mqtt客户端拖入后,点击MQTT客户端,便可以查看组件属性 上图4个属性决定的你连接的是哪个服务器和哪个设备

    2024年02月05日
    浏览(68)
  • MQTT 客户端自动重连最佳实践|构建可靠 IoT 设备连接

    MQTT 是一个基于 TCP 协议的发布/订阅模型协议,它被广泛应用于物联网、传感器网络和其他低带宽、不稳定网络环境中。在这些网络环境中,网络连接往往不稳定,可能会出现网络故障、信号弱化、丢包等问题,这可能会导致 MQTT 客户端与服务器之间的连接中断。物联网应用

    2024年02月16日
    浏览(39)
  • 手机、电脑mqtt客户端通过腾讯云服务器远程连接ESP32

            本文将实现:         1、esp32与腾讯云物联网服务器通过mqtt协议通信         2、电脑和手机客户端通过mqtt与腾讯云相通信         3、腾讯云服务器内部消息转发,将手机、电脑发布的主题转发给esp32订阅,实现手机、电脑与esp32的远程通信。      

    2024年02月11日
    浏览(62)
  • QT使用MQTT协议连接ONENET云平台:智能家居PC客户端开发笔记-1 环境搭建

    前端时间做了一个项目,要求在PC端使用QT制作一个客户端,用来接收从单片机上传到Onennet的数据,并且还要下发指令。当时弄了好几天,中途遇见了非常多的问题,所以写下这篇文章记录一下,同时分享一下自己的经验。 我的环境:QT 5.12.6 总结下我遇见的难点: 1,环境配

    2024年02月11日
    浏览(69)
  • QT使用MQTT协议连接ONENET云平台:智能家居PC客户端开发笔记-2 项目开发

    这篇文章主要是分享QT智能家居项目的代码 在我看来,QT MQTT的使用主要难点就是对于环境的搭建,在我们把环境搭建完之后,接下来就是传统手艺了,我们只要知道相应的库函数,调用它,就能实现我们所需要的功能了。 所以,在这里我也只是简单的分享一下我写的第一版

    2024年02月16日
    浏览(52)
  • MQTT 常用客户端库介绍 (全面涵盖c,c++,java,c#,python)

    MQTT(Message Queuing Telemetry Transport)是一种轻量级的通信协议,被广泛应用于物联网和分布式系统中。它以其简单、可靠和高效的特性而备受推崇,成为连接设备和应用程序的首选协议。MQTT的重要性不言而喻,它为实时通信提供了可靠的解决方案,使得设备之间的数据交换和控

    2024年02月08日
    浏览(74)
  • 用java开发MQTT(SSL连接)

    近期又接触到了新的一个东西MQTT,用本地环境模拟一下吧。 主要是用EMQ作为服务器,首先当然是去官网下载一个EMQ  下载 EMQX 我本地用的是windows版本,下载完后进去bin目录后有个emqx文件 用命令窗口输入emqx start 就启动了 这里主要是用mysql来鉴权,设置一下就好了,当然建

    2024年02月07日
    浏览(45)
  • SpringBoot中使用Spring integration加Eclipse Paho Java Client 实现MQTT客户端

    Spring Integration 是一个开源的集成消息处理框架,它提供了消息传递、消息过滤、消息转换、消息路由等功能,可以用于构建异步、分布式的系统。 Spring-integration-stream是Spring Integration框架的一个组件,用于在不同的系统和应用之间进行消息传递、集成和流处理。 它提供了一套

    2024年02月10日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包