Netty的WebSocket和HTTP协议支持

今天我学习了NettyWebSocketHTTP协议支持,包括HTTP协议的编解码器、WebSocket相关Handler等,掌握了Netty基于WebSocketHTTP的服务器开发技术。下面是一个WebSocket服务器:

public class WebSocketServer {

 

    public static void main(String[] args) throws Exception {

        EventLoopGroup bossGroup = new NioEventLoopGroup();

        EventLoopGroup workerGroup = new NioEventLoopGroup();

 

        try {

            ServerBootstrap bootstrap = new ServerBootstrap();

            bootstrap.group(bossGroup, workerGroup)

                    .channel(NioServerSocketChannel.class)

                    .childHandler(new ChannelInitializer<SocketChannel>() {

                        @Override

                        protected void initChannel(SocketChannel ch)

                                throws Exception {

                            ch.pipeline().addLast(new HttpServerCodec(), new HttpObjectAggregator(64 * 1024), new WebSocketServerProtocolHandler("/ws"), new TextWebSocketFrameHandler());

                        }

                    });

 

            ChannelFuture future = bootstrap.bind(8080).sync();

            future.channel().closeFuture().sync();

        } finally {

            bossGroup.shutdownGracefully();

            workerGroup.shutdownGracefully();

        }

    }

}

posted @ 2023-05-22 21:20  ITJAMESKING  阅读(32)  评论(0编辑  收藏  举报