From 2da1f2be9e62dddac95d08a1c49493f5f753fae2 Mon Sep 17 00:00:00 2001 From: youpaishidifu <1@ypshidifu.cn> Date: Wed, 28 Oct 2026 12:41:02 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AC=AC58=E6=89=B9=E9=98=B2=E5=BE=A1:=20build?= =?UTF-8?q?RequestUrl=20=E5=B7=B2=E5=90=ABchat/completions=E5=88=99?= =?UTF-8?q?=E7=BB=9D=E4=B8=8D=E5=86=8D=E8=A1=A5(=E9=98=B2=E5=8F=8C?= =?UTF-8?q?=E9=87=8D=E5=9C=B0=E5=9D=80)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/Sdf1_login/AIChatManager.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/Sdf1_login/AIChatManager.java b/src/main/java/Sdf1_login/AIChatManager.java index 25da68b..3b89ed3 100644 --- a/src/main/java/Sdf1_login/AIChatManager.java +++ b/src/main/java/Sdf1_login/AIChatManager.java @@ -473,7 +473,8 @@ public class AIChatManager { String url = endpoint.baseUrl; // 内置供应商的 baseUrl 总是基础地址,必须拼接;自定义供应商受自动补齐开关控制 boolean needAppend = !endpoint.isCustom || autoAppendCompletions; - if (needAppend) { + // ★ 防御性:即使开关为开,若 URL 已含 chat/completions 也绝不再补(避免双重地址) + if (needAppend && !url.contains("chat/completions")) { if (!url.endsWith("/")) url += "/"; url += "chat/completions"; }