[英]Netty and multiple handlers
如何通过netty执行以下操作:
现在我有这段代码:
public class HttpHelloWorldServerInitializer extends ChannelInitializer<SocketChannel> {
@Override
public void initChannel(SocketChannel ch) {
ChannelPipeline p = ch.pipeline();
p.addLast(new HttpServerCodec());
p.addLast(new HttpHandler());
// Other pipelene handlers?
}
}
我可以在管道中使用“ swither”之类的东西吗? 否则这没有意义,我需要在处理程序中处理请求uri。 但是如何确定websocket协议呢?
在您自己的HttpHandler中,您必须先检查uri,然后再决定要运行哪个“真实”处理程序。 为此,有2种方法:
第一个是最简单但不容易扩展的。
第二个要难一些,您必须确保/清除每个请求都到达正确的处理程序。 例如,
简而言之,您正在尝试在Web服务中实现路由解析。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.