DefaultFullHttpResponse 中获取status

来源:5-3 WebSocket握手请求业务的实现

慕哥5470374

2018-12-13 14:55

private void sendHttpResponse(ChannelHandlerContext ctx,FullHttpRequest req,DefaultFullHttpResponse res){

    if(.code()!=200){
        ByteBuf buf = Unpooled.copiedBuffer(res.getStatus().toString(), CharsetUtil.UTF_8);
    }
}

res.getStatus() 会报错  netty版本是5.0.0的  换成低版本是可以的 ,但是方法是过时的方法,在新版本中怎么获取status


写回答 关注

2回答

  • qq_做最好的自己_2
    2019-03-18 19:57:30
    private void sendHttpResponse(ChannelHandlerContext ctx, FullHttpRequest req,
                                  DefaultFullHttpResponse res) {
        if (res.status().code() != 200) {
            ByteBuf buf = Unpooled.copiedBuffer(res.status().toString(), CharsetUtil.UTF_8);
            res.content().writeBytes(buf);
            buf.release();
        }
        //服务端向客户端发送数据
        ChannelFuture f = ctx.channel().writeAndFlush(res);
        if (res.status().code() != 200) {
            f.addListener(ChannelFutureListener.CLOSE);
        }
    }



  • 梦编猿
    2018-12-25 20:44:12

    +1~

Netty入门之WebSocket初体验

由浅入深了解Java高性能NIO通信首选框架——Netty

29325 学习 · 63 问题

查看课程

相似问题