【问题标题】:java websocket cannot resolve setwebsocketfactoryjava websocket无法解析setwebsocketfactory
【发布时间】:2017-06-15 16:05:19
【问题描述】:

我正在使用来自 TooTallNate 的 java_websocket 库在我的 android 上试用 websocketclient。在 ws 上一切正常。对于 wss,我的本地开发服务器有一个自签名证书,我试图在我的客户端中使用 instructions from here 绕过它。然而,

WebSocketClient.setWebSocketFactory(new DefaultSSLWebSocketClientFactory(sc)); 

无法解析setWebSocketFactoryDefaultSSLWebSocketClientFactory。我是否在 WSS 中的 SSL 支持的编译头文件中遗漏了某些内容?这是我的依赖

compile 'org.java-websocket:Java-WebSocket:1.3.4'

而且这个标头也没有解析

import org.java_websocket.client.DefaultSSLWebSocketClientFactory;

你能告诉我我错过了什么吗?谢谢!

【问题讨论】:

    标签: android wss self-signed java-websocket


    【解决方案1】:

    没关系。得到它的工作。看起来 API 目前有所不同。

    使用来自https://github.com/TooTallNate/Java-WebSocket/blob/master/src/main/example/SSLClientExample.java 的这个sn-p 接受自签名证书,其中mWebSocketClientWebSocketClient 类型的对象。

        TrustManager[] trustAllCerts = new TrustManager[] { new X509TrustManager() {
            public X509Certificate[] getAcceptedIssuers() {
                X509Certificate[] myTrustedAnchors = new X509Certificate[0];
                return myTrustedAnchors;
            }
    
            @Override
            public void checkClientTrusted(X509Certificate[] certs,
                                           String authType) {}
    
            @Override
            public void checkServerTrusted(X509Certificate[] certs,
                                           String authType) {}
        } };
        try {
            SSLContext sslContext = SSLContext.getInstance("TLS");
            sslContext.init(null, trustAllCerts, new SecureRandom());
            SSLSocketFactory factory = sslContext.getSocketFactory();
            mWebSocketClient.setSocket(factory.createSocket());
            mWebSocketClient.connectBlocking();
        }
        catch (Exception e){
            e.printStackTrace();
        }
    

    【讨论】:

    • 嘿,这确实在 wss 连接上有效。非常感谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-10
    • 2020-03-25
    • 1970-01-01
    • 2015-12-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多