使用netty处理http请求的时候,一般都使用
HttpRequestDecoder HttpResponseEncoder
这个两个类,一个是解析解码request的一个是对response进行编码的
后来又出来一个类把这两个类的功能给替代了的类
HttpServerCodec
这个类包含请求的解码和响应的编码,是个二合一的功能类
在我们真正要处理的handler之前加上这个就可以出来上面解析请求的类了
像这样
b.childHandler(new ChannelInitializer<SocketChannel>() {
@Override
protected void initChannel(SocketChannel ch) throws Exception {
ch.pipeline().addLast(new HttpServerCodec());
ch.pipeline().addLast("serverHandler",new ServerHandler());
}
});
就可以对来的请求和出去的响应进行编解码的处理了,我的业务handler只需要处理逻辑,就不用考虑编解码的问题了