我有一个Netty 4.0.19应用程序,我使用一个TextWebSocketFrames发送和接收消息。
这些消息,当它们被接收时,都通过"onmessage"事件处理程序触发。
我该怎么做才能在onerror处理程序上生成错误消息?
例如,下面的错误条件如何作为错误而不是消息发送回web套接字客户端?public void channelRead0(final ChannelHandlerContext ctx, final TextWebSocketFrame msg) throws Exception
{
final String message = msg.retain().text();
Envelope envelope = null;
boolean errorFree = true;
try
{
envelope = EnvelopeJsonEncoder.decode(MessageType.PUBLISH, message).build();
}
catch (final Exception e)
{
errorFree = false;
final WebSocketFrame outFrame = new CloseWebSocketFrame(1002, "Closing due to error");
ctx.writeAndFlush(outFrame);
}
if (errorFree)
{
ctx.fireChannelRead(envelope);
}
}
通常你会写一个CloseWebSocketFrame并指定正确的关闭代码和原因