谢谢阅读!
背景:
我正在为服务器开发一个Android客户端,其中需求是app,需要与基于WebSockets的服务器来回连续交换消息.
实现:对于客户端,我使用适用于Android的weberknecht’s WebSocket客户端库,而服务器是基于Tornado的.
问题:
目前,我通过生成AsyncTask来调用onCreate中的initWebSocketClient.但是,我一直收到客户端超时异常.
Android客户端:
private void initWebSocketClient() {
Log.e(TAG,"initWebSocketClient");
try {
URI url = new URI("ws://192.168.207.84:8080/");
WebSocket websocket = new WebSocketConnection(url);
// Register Event Handlers
websocket.setEventHandler(new WebSocketEventHandler() {
public void onOpen()
{
Log.e(TAG,"--open");
}
public void onMessage(WebSocketMessage message)
{
Log.e(TAG,"--received message: " + message.getText());
}
public void onClose()
{
Log.e(TAG,"--close");
}
});
// Establish WebSocket Connection
websocket.connect();
// Send UTF-8 Text
websocket.send("hello world");
// Close WebSocket Connection
websocket.close();
}
catch (WebSocketException wse) {
wse.printStackTrace();
}
catch (URISyntaxException use) {
use.printStackTrace();
}
}
龙卷风服务器:
#!/usr/bin/env python
import tornado.ioloop
import tornado.web
import tornado.websocket
clas