【发布时间】:2016-09-27 07:39:56
【问题描述】:
我的连接套接字http://(with port) url 已完成并且工作正常,但我的连接https://(without port) 在Java-WebSocket 中不工作。
我使用 gradle 依赖 'org.java-websocket:Java-WebSocket:1.3.0'
WebSocketClient mWebSocketClient = new WebSocketClient(uri) {
@Override
public void onOpen(ServerHandshake serverHandshake) {
Log.e(TAG, "Websocket: " + "Opened");
mWebSocketClient.send("Hello from " + Build.MANUFACTURER + " " + Build.MODEL);
}
@Override
public void connect() {
super.connect();
//Log.e(TAG, "Websocket: " + "connect");
SharedPreference.storeValue(mContext, SharedPreference.WEB_SOCKET_STATUS, SharedPreference.WEB_SOCKET_CONNECT);
}
}
【问题讨论】:
-
可能你的 SSL 证书没有为你的 https url 签名。
-
简单来说,WebSocket库的实现有很多关于SSL的open issues。它的 SSL 实现可能在某些条件下有效,但您不应期望它总是有效。