67,513
社区成员
发帖
与我相关
我的任务
分享
你好,请问你是怎么解决的?我也遇到相同的问题了
@Override
public void userEventTriggered(ChannelHandlerContext ctx, Object evt) throws Exception {
if (evt instanceof HandshakeComplete) {
// 握手已完成,不需要再解析Http request了
ctx.pipeline().remove(HttpRequestHandler.class);
} else if (evt instanceof IdleStateEvent) {
IdleStateEvent event = (IdleStateEvent) evt;
if (event.state().equals(IdleState.READER_IDLE)) {
ctx.close();
}
} else {
super.userEventTriggered(ctx, evt);
}
}
[/quote]
@Override
public void userEventTriggered(ChannelHandlerContext ctx, Object evt) throws Exception {
if (evt instanceof HandshakeComplete) {
// 握手已完成,不需要再解析Http request了
ctx.pipeline().remove(HttpRequestHandler.class);
} else if (evt instanceof IdleStateEvent) {
IdleStateEvent event = (IdleStateEvent) evt;
if (event.state().equals(IdleState.READER_IDLE)) {
ctx.close();
}
} else {
super.userEventTriggered(ctx, evt);
}
}
[/quote]
netty版本号为4.1.25.Final,首先感谢大佬的回复,然后HandshakeComplete,HttpRequestHandler这两个我引不到包。。[/quote]
代码只是例子罢了,HttpRequestHandler是我们的处理类,你肯定没有,HandshakeComplete看你的pom.xml是怎么写的,如果不是依赖的netty-all的话,那就单独依赖netty-codec-http这个模块,我这4.1.9和4.1.36都有这个类,不存在中间版本会没有这个类的
@Override
public void userEventTriggered(ChannelHandlerContext ctx, Object evt) throws Exception {
if (evt instanceof HandshakeComplete) {
// 握手已完成,不需要再解析Http request了
ctx.pipeline().remove(HttpRequestHandler.class);
} else if (evt instanceof IdleStateEvent) {
IdleStateEvent event = (IdleStateEvent) evt;
if (event.state().equals(IdleState.READER_IDLE)) {
ctx.close();
}
} else {
super.userEventTriggered(ctx, evt);
}
}
[/quote]
@Override
public void userEventTriggered(ChannelHandlerContext ctx, Object evt) throws Exception {
if (evt instanceof HandshakeComplete) {
// 握手已完成,不需要再解析Http request了
ctx.pipeline().remove(HttpRequestHandler.class);
} else if (evt instanceof IdleStateEvent) {
IdleStateEvent event = (IdleStateEvent) evt;
if (event.state().equals(IdleState.READER_IDLE)) {
ctx.close();
}
} else {
super.userEventTriggered(ctx, evt);
}
}