0

尝试使用 eclipse paho (1.0.2) java 库使用表单的 url 连接到 MQTT 代理tls:// ...会抛出IllegalArgumentException. 毫不奇怪,它在代码中被明确禁止(尽管 ssl 可用)。连接在 MqttConnectOptions 中调用此方法

protected static int validateURI(String srvURI) {
        try {
            URI vURI = new URI(srvURI);
            if (!vURI.getPath().equals("")) {
                throw new IllegalArgumentException(srvURI);
            }
            if (vURI.getScheme().equals("tcp")) {
                return URI_TYPE_TCP;
            }
            else if (vURI.getScheme().equals("ssl")) {
                return URI_TYPE_SSL;
            }
            else if (vURI.getScheme().equals("local")) {
                return URI_TYPE_LOCAL;
            }
            else {
                throw new IllegalArgumentException(srvURI);
            }
        } catch (URISyntaxException ex) {
            throw new IllegalArgumentException(srvURI);
        }
    }

有没有办法绕过这个限制?或者,是否有某些原因被阻止?人们如何通过这些 url 使用这个客户端?任何帮助表示赞赏。

4

1 回答 1

0

我刚刚使用相同的 Eclipse Paho (1.0.2) 库遇到了同样的问题,并且在将代理 URI 更改为"ssl://.....". 到目前为止,至少我能够初始化 SSL 握手。

于 2015-11-13T08:20:56.833 回答