如何在Netty中获取客户端连接或断开连接的通知?

4

我希望在netty服务器上每当一个客户端(浏览器是我的客户端)连接或断开连接时得到通知。我已经扩展了SimpleChannelInboundHandler,并且正在处理WebSockets,所以覆盖channelActive和channelInactive方法可以解决我的问题吗?如果是这样,请帮助我解决问题;如果有其他方法实现,也请告诉我。谢谢。

1个回答

3

当TCP连接建立和关闭时,channelActive(...)和channelInactive(...)将会被通知。


1
请问您能否提供以上两种方法中的任意一种实现?我想在新客户端加入时打印IP。我已经实现了获取IP并将其打印到套接字上的代码,但我不知道如何在新客户端加入时立即执行此操作。 - Yatin
public void channelActive(ChannelHandlerContext ctx) throws Exception { channels.writeAndFlush(new TextWebSocketFrame("欢迎")); channels.add(ctx.channel()); ctx.fireChannelActive(); }(*channels是通道组) - Yatin
1
请花些时间至少阅读javadocs文档...您可以通过ctx.channel().remoteAddress()获取它。 - Norman Maurer

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接