diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/proxy/core/HttpProxy.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/proxy/core/HttpProxy.java index ba6d4a9c..bb0f5668 100644 --- a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/proxy/core/HttpProxy.java +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/proxy/core/HttpProxy.java @@ -97,6 +97,9 @@ public class HttpProxy implements EventListener { return; } + // 用户连接到代理服务器时,设置用户连接不可读,等待代理后端服务器连接成功后再改变为可读状态 + ctx.channel().config().setOption(ChannelOption.AUTO_READ, false); + String host = getHost(bytes); if (StringUtils.isBlank(host)) { ctx.channel().close(); @@ -168,6 +171,11 @@ public class HttpProxy implements EventListener { super.channelInactive(ctx); } + @Override + public void channelActive(ChannelHandlerContext ctx) throws Exception { + super.channelActive(ctx); + } + @Override public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) { // 当出现异常就关闭连接