Skip to content

Commit 5fd7d0b

Browse files
committed
fix: 正确设置响应码
1 parent a172b7c commit 5fd7d0b

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

src/main/java/top/meethigher/proxy/http/ReverseHttpProxy.java

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -408,10 +408,18 @@ protected Handler<AsyncResult<HttpClientResponse>> sendRequestHandler(Route rout
408408
// 设置响应码
409409
realResp.setStatusCode(proxyResp.statusCode());
410410
// 流输出
411-
proxyResp.pipeTo(realResp);
412-
doLog(route, realReq, realResp, realUrl);
411+
proxyResp.pipeTo(realResp).onSuccess(v -> {
412+
doLog(route, realReq, realResp, realUrl);
413+
}).onFailure(e -> {
414+
realResp.setStatusCode(502);
415+
realResp.end("Bad Gateway");
416+
log.error("{} {} proxy response copy error", realReq.method().name(), realUrl, e);
417+
});
418+
413419
} else {
414420
Throwable e = ar.cause();
421+
realResp.setStatusCode(502);
422+
realResp.end("Bad Gateway");
415423
log.error("{} {} send request error", realReq.method().name(), realUrl, e);
416424
}
417425
};

0 commit comments

Comments
 (0)