当前位置: 代码迷 >> 综合 >> netty搭建TCP服务器过程中一些入门常见问题记录
  详细解决方案

netty搭建TCP服务器过程中一些入门常见问题记录

热度:101   发布时间:2023-09-05 17:56:23.0

1.客户端第一次连接能进入到handler的方法中,但是一旦这个客户端关闭了连接,那么重新连接的时候就无法再进入到server的handler中了,需要重启server之后才能再次进入。这时候,可以看一下设置handler的方式

原代码:

serverBootstrap.childHandler(new MsgHandler());

修改之后:

serverBootstrap.childHandler(new ChannelInitializer<SocketChannel>() {@Overrideprotected void initChannel(SocketChannel socketChannel) throws Exception {socketChannel.pipeline().addLast(new MsgHandler());}});

 

2.服务器端向客户端发送数据,客户端接收不到。这时候,可以确认一下ctx.write()方法中传递的参数是不是ByteBuf类型

原代码:

ctx.writeAndFlush(data);

修改之后:

ByteBuf responseBuf=Unpooled.copiedBuffer(data);
ctx.writeAndFlush(responseBuf);