所以我实际上设法解决了它,结果发现它不是实际问题的cookie,而是websocket没有用有效的sslcontext初始化.这很容易通过以下方式解决:
WebSocketOrderClient webSocketOrderClient = new WebSocketOrderClient(uri, new Draft_17(), cmap, TIMEOUT);
SSLContext sslContext = null;
sslContext = SSLContext.getInstance( "TLS" );
sslContext.init( null, null, null ); // will use java's default key and trust store which is sufficient unless you deal with self-signed certificates
webSocketOrderClient.setWebSocketFactory(new DefaultSSLWebSocketClientFactory(sslContext));
webSocketOrderClient.connectBlocking();
使用WebSocketOrderClient:
private class WebSocketOrderClient extends WebSocketClient {
public WebSocketOrderClient( URI serverUri, Draft draft, Map headers, int timeout) {
super( serverUri, draft, headers, timeout );
}
@Override
public void onOpen( ServerHandshake handshakedata ) {
Log.w("connected", "true");
}
@Override
public void onMessage( String message ) {
Log.w( "got: ", message );
}
@Override
public void onClose( int code, String reason, boolean remote ) {
Log.w( "Disconnected", ""+code );
}
@Override
public void onError( Exception ex ) {
ex.printStackTrace();
}
}
希望这有助于将来可能遇到此问题的任何人.