反向代理上的Java Paho MQTT客户端连接
我正在使用JavaPAHO库与mqtt代理通信。使用下面的代码,我可以很好地连接反向代理上的Java Paho MQTT客户端连接,java,mqtt,Java,Mqtt,我正在使用JavaPAHO库与mqtt代理通信。使用下面的代码,我可以很好地连接 MqttClient publisher = new MqttClient("tcp://192.168.1.100:1883","randomClientId"); MqttConnectOptions options = new MqttConnectOptions(); options.setAutomaticReconnect(true); options.setCl
MqttClient publisher = new MqttClient("tcp://192.168.1.100:1883","randomClientId");
MqttConnectOptions options = new MqttConnectOptions();
options.setAutomaticReconnect(true);
options.setCleanSession(true);
options.setConnectionTimeout(10);
publisher.connect(options);
但是,我有一个反向代理后面的mqtt代理,所以我不需要打开一个单独的端口。所以我需要做的不是连接到“tcp://192.168.1.100:1883“我想连接到”tcp://192.168.1.100/mqtt".
但是,当我尝试此操作时,会出现如下错误:
Exception in thread "main" java.lang.IllegalArgumentException: URI path must be empty "tcp://13.251.5.125/mqtt"
例如,使用python中的库,我可以很好地做到这一点,但是使用Java客户机,我不确定如何做到这一点。使用本机MQTT是不可能做到的 实现此功能的唯一方法是在WebSocket上使用MQTT。在这种情况下,您需要传递如下所示的URI:
ws://192.168.1.100/mqtt
注意,它现在以ws://
开头,而不是tcp://