From 324b95aa7f69b53935a43c5fef4e5ea76054ef40 Mon Sep 17 00:00:00 2001 From: dxiaom <1473919287@qq.com> Date: Sat, 10 Oct 2026 01:03:26 +0800 Subject: [PATCH] =?UTF-8?q?fix(admin):=20=E6=B8=A0=E9=81=93=E7=AE=A1?= =?UTF-8?q?=E7=90=86=20-=20=E7=94=9F=E6=88=90=E7=BB=93=E6=9E=9C=E5=AA=92?= =?UTF-8?q?=E4=BD=93=E4=B8=8B=E8=BD=BD=E8=B7=9F=E9=9A=8F=E6=B8=A0=E9=81=93?= =?UTF-8?q?=E7=BA=A7=E4=BB=A3=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/internal/app/task_media_storage.go | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/backend/internal/app/task_media_storage.go b/backend/internal/app/task_media_storage.go index 77f8eb9f6..3e14a6fb6 100644 --- a/backend/internal/app/task_media_storage.go +++ b/backend/internal/app/task_media_storage.go @@ -130,7 +130,18 @@ func (s *Service) downloadTaskMedia(ctx context.Context, config providerConfig, ApplyOutboundHeaders(req, config.Headers) } ApplyDefaultOutboundHeaders(req) - response, err := OutboundHTTPClient(3 * time.Minute).Do(req) + // 结果文件可能托管在渠道同域(sameProviderOrigin 时还带渠道鉴权), + // 渠道配置了出站代理时下载必须走同一代理,否则配代理渠道的结果无法取回。 + proxyURL := "" + if metadata, ok := ctx.Value(providerAnalyticsKey{}).(providerAnalyticsContext); ok { + proxyURL = metadata.ProxyURL + } + if strings.TrimSpace(proxyURL) == "" && strings.TrimSpace(config.ChannelID) != "" { + if ch, err := s.repo.SystemChannel(config.ChannelID); err == nil { + proxyURL = ch.ProxyURL + } + } + response, err := OutboundHTTPClientWithProxy(3*time.Minute, proxyURL).Do(req) if err != nil { return "", "", err }