Reactjs 如何使用react websocket连接到MOSQUITO

Reactjs 如何使用react websocket连接到MOSQUITO,reactjs,websocket,mqtt,mosquitto,Reactjs,Websocket,Mqtt,Mosquitto,npm安装react websocket后 我正在尝试连接Windows MOSQUITO(MQTT代理服务器) 然后,我在react源中设置了websocket地址,但无法从Mosquitto接收消息,也无法将任何消息发布到Mosquitto服务器 但它在由Java运行的glassfish服务器中工作 我认为Mosquitto和glassfish服务器是相同的websocket服务器,但它们之间似乎有区别 是否有使用react websocket库连接MOSQUITO代理服务器的解决方案 re

npm安装react websocket后

我正在尝试连接Windows MOSQUITO(MQTT代理服务器)

然后,我在react源中设置了websocket地址,但无法从Mosquitto接收消息,也无法将任何消息发布到Mosquitto服务器

但它在由Java运行的glassfish服务器中工作

我认为Mosquitto和glassfish服务器是相同的websocket服务器,但它们之间似乎有区别

是否有使用react websocket库连接MOSQUITO代理服务器的解决方案

react websocket库的版本是2.0.0 MOSQUITO MQTT代理服务器版本为1.5.4

import Websocket from 'react-websocket'

export default class WebsocketInput {

  constructor(queue, onOpenCallback) {
    this.queue = queue
    this.websocket = new Websocket({
      url: process.env.REACT_APP_WEBSOCKET_ADDRESS,
      onMessage: function(data) {
        queue.offer(JSON.parse(data))
      },
      onOpen: function() {
        onOpenCallback()
      }
    })
    this.websocket.setupWebsocket()
  }

  sendMessage(msg) {
    this.websocket.state.ws.send(msg)
  }

  close() {
    this.websocket.shouldReconnect = false
    this.websocket.state.ws.close()
  }
}
这是React代码,我是从下载的。我设置了url“ws://localhost:9001”,但在React应用程序中无法接收任何消息

port 1883
protocol mqtt

listener 9001
protocol websockets
这是mosquitto.conf文件的一部分。我通过键入mosquitto-v-cmosquitto.conf来运行服务器,并在Windows CMD中运行mosquitto服务器。
谢谢

请分享您用于发布/订阅的代码。请注意,您使用的是“WebSocket上的MQTT”;需要实施;它比建立websocket连接和发送/接收文本更复杂。我建议使用MQTT库(示例包括和)。如果您不介意使用
MQTT.js
,我可以共享一些对我有用的代码。如果您共享一些代码,我将不胜感激。感谢您添加代码;如前所述,您不能仅通过Websocket连接发送/接收字符串,而是需要实现MQTT协议(从数据包开始)。搜索“react mqtt”应该会让您找到许多示例(使用mqtt库)。#我非常感谢英国人对您的帮助。