2014-01-15 2 views
1

в моем приложении для Android. Я хочу использовать библиотеку autobahn для использования websockets.Нарушение протокола исключения WebSockets Autobahn

Я думаю, что сервер использует черновик-17. Может ли кто-нибудь сказать мне, как настроить клиента для использования этого протокола?

У меня есть этот код:

 mConnection.connect(url,new String[] {"protocolname?"}, new WebSocketHandler() { 

     //some functions 
     },options); 

Greetings

UPDATE На моем сервере я использую Jetty в версии 8.1.

UPDATE выход из LogCat является:

01-15 22:54:53.481: D/de.tavendo.autobahn.WebSocketReader(32452): created 
01-15 22:54:53.491: D/de.tavendo.autobahn.WebSocketConnection(32452): WS reader created  and started 
01-15 22:54:53.491: D/de.tavendo.autobahn.WebSocketReader(32452): running 
01-15 22:54:53.491: D/de.tavendo.autobahn.WebSocketWriter(32452): created 
01-15 22:54:53.491: D/de.tavendo.autobahn.WebSocketConnection(32452): WS writer created and started 
01-15 22:54:53.551: D/de.tavendo.autobahn.WebSocketConnection(32452): opening handshake received 
01-15 22:54:53.551: D/Websocket(32452): Status: Connected to ws://192.168.178.30:8080 
01-15 22:54:53.551: D/de.tavendo.autobahn.WebSocketReader(32452): run() : WebSocketException (de.tavendo.autobahn.WebSocketException: RSV != 0 and no extension negotiated) 
01-15 22:54:53.551: D/de.tavendo.autobahn.WebSocketReader(32452): ended 
01-15 22:54:53.551: D/de.tavendo.autobahn.WebSocketConnection(32452): fail connection [code = 4, reason = WebSockets protocol violation 
01-15 22:54:53.551: D/de.tavendo.autobahn.WebSocketReader(32452): quit 
01-15 22:54:53.551: D/de.tavendo.autobahn.WebSocketWriter(32452): ended 
01-15 22:54:53.551: D/Websocket(32452): Connection lost. 
01-15 22:54:53.551: D/de.tavendo.autobahn.WebSocketConnection(32452): worker threads stopped 

ответ

1

Вы имеете в виду версию протокола WebSocket или WebSocket субпротоколы?

Что касается первого: AutobahnAndroid реализует RFC6455 (последняя и последняя версия протокола WebSocket). Невозможно перейти на более ранние версии, но в основном не произошло существенных изменений с Hybi-10 + на RFC6455.

Относительно последнего: подпрограммы WebSocket указываются при открытии соединения WebSocket, например this.

+0

Да, протокол WebSocket. Спасибо за эту информацию. Вы знаете, как настроить Jetty 8.1 на стандарт RFC6455? –

+0

Нет, извините. Но, вероятно, вам не нужно ничего особенного делать. Версия протокола WebSocket объявляется и согласовывается во время первоначального рукопожатия открытия WebSocket между двумя реализациями сверстников. – oberstet

+0

все в порядке, моя проблема в том, что мой клиент android отключается после его подключения. Исключением является вызов: 'D/de.tavendo.autobahn.WebSocketConnection (6471): fail connection [code = 4, reason = нарушение протокола WebSockets' –

Смежные вопросы