我尝试使用dart:io
包中的WebSocket class连接到SSL WebSocket服务。这似乎并不奏效。目前不支持wss://
协议还是我错过了一些东西。这里所使用的代码:使用dart:io使用wss://协议(SSL)的WebSocket
var ws = new WebSocket('wss://...');
ws.onopen =() {
print('open');
};
ws.onmessage = (e) {
print(e.data);
};
我也试过替代API:
var client = new HttpClient(),
conn = new WebSocketClientConnection(client.getUrl(new Uri.fromString('https://...')));
conn.onMessage = (msg) {
print(msg);
};
conn.onOpen =() {
print('open');
};
这似乎没有任何工作,我得到这样的错误:
1006 HttpParserException:在完全响应之前连接已关闭 收到标头1006 HttpParserException:无效的请求方法
我正在使用最新的SDK。
我想在服务器端使用websocket(即DartVM)。无论如何,第二个选择实际上在最新的SDK中起作用。 – gmosx
太好了。随着M3的改变,情况发生了很大变化。你的'onOpen'和'onMessage'也应该以我上面演示的方式工作。 –