fix(websockets): filter for text and binary frames (#522)
This commit is contained in:
@@ -178,14 +178,22 @@ class WebSocketImpl extends ChannelOwner implements WebSocket {
|
||||
void handleEvent(String event, JsonObject parameters) {
|
||||
switch (event) {
|
||||
case "frameSent": {
|
||||
int opCode = parameters.get("opcode").getAsInt();
|
||||
if (opCode != 1 && opCode != 2) {
|
||||
break;
|
||||
}
|
||||
WebSocketFrameImpl WebSocketFrame = new WebSocketFrameImpl(
|
||||
parameters.get("data").getAsString(), parameters.get("opcode").getAsInt() == 2);
|
||||
parameters.get("data").getAsString(), opCode == 2);
|
||||
listeners.notify(EventType.FRAMESENT, WebSocketFrame);
|
||||
break;
|
||||
}
|
||||
case "frameReceived": {
|
||||
int opCode = parameters.get("opcode").getAsInt();
|
||||
if (opCode != 1 && opCode != 2) {
|
||||
break;
|
||||
}
|
||||
WebSocketFrameImpl WebSocketFrame = new WebSocketFrameImpl(
|
||||
parameters.get("data").getAsString(), parameters.get("opcode").getAsInt() == 2);
|
||||
parameters.get("data").getAsString(), opCode == 2);
|
||||
listeners.notify(EventType.FRAMERECEIVED, WebSocketFrame);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -102,10 +102,6 @@ public class TestWebSocket extends TestBase {
|
||||
" ws.addEventListener('message', () => { ws.close(); });\n" +
|
||||
" }", webSocketServer.getPort());
|
||||
waitForCondition(socketClosed);
|
||||
if (isWebKit()) {
|
||||
// TODO: there is intermittent <received<A+g=> message in WebKit.
|
||||
log.remove("received<A+g=>");
|
||||
}
|
||||
assertEquals("open", log.get(0), "Events: " + log);
|
||||
assertEquals("close", log.get(3), "Events: " + log);
|
||||
log.sort(String::compareTo);
|
||||
|
||||
Reference in New Issue
Block a user