一、编码器、解码器
1 | ... ... |
其中 HttpRequestHandler 和 TextWebSocketFrameHandler 是自定义 Handler
1.1 HttpRequestHandler
1 | @Component |
1.2 TextWebSocketFrameHandler
1 | @Component |
二、主动向客户端推送消息
2.1 推送工具类
1 | public class ChannelSupervise { |
支持向具体某个客户端发送消息,或者群发消息
2.2 推送接口
1 | @RestController |
三、测试
1 | <!DOCTYPE html> |
注意
因为自定义 Handler 使用依赖注入实例化,所以需要添加 @ChannelHandler.Sharable 注解,否则会报错:is not a @Sharable handler, so can’t be added or removed multiple times.
参考
完整代码:GitHub