From 165047acaee39fd8f577ce12284429d48a237b4c Mon Sep 17 00:00:00 2001 From: liuxy <938651469@qq.com> Date: Wed, 11 Jun 2025 14:50:59 +0800 Subject: [PATCH] Update urltest for test a proxy MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 鉴于auto规则 失败后很久才能重新访问。提供一个思路和实践:节点失败时单个测速,而不是非要等到健康检查。 --- adapter/outboundgroup/urltest.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/adapter/outboundgroup/urltest.go b/adapter/outboundgroup/urltest.go index 5dc62054..496b4baf 100644 --- a/adapter/outboundgroup/urltest.go +++ b/adapter/outboundgroup/urltest.go @@ -4,6 +4,7 @@ import ( "context" "encoding/json" "errors" + "fmt" "time" "github.com/metacubex/mihomo/common/callback" @@ -67,6 +68,11 @@ func (u *URLTest) DialContext(ctx context.Context, metadata *C.Metadata) (c C.Co c.AppendToChains(u) } else { u.onDialFailed(proxy.Type(), err, u.healthCheck) + expectedStatus, err := utils.NewUnsignedRanges[uint16](u.expectedStatus) + if err != nil { + return nil, fmt.Errorf("DialContext onDialFailed %s: %w", proxy.Name(), err) + } + proxy.URLTest(ctx, u.testUrl, expectedStatus) } if N.NeedHandshake(c) {