From 6e2cd1c23ed1803c53ebf88059c34af2355b572f Mon Sep 17 00:00:00 2001 From: freekof Date: Sun, 1 Feb 2026 14:07:32 +0800 Subject: [PATCH] Update HttpFmt.cs --- v2rayN/ServiceLib/Handler/Fmt/HttpFmt.cs | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/v2rayN/ServiceLib/Handler/Fmt/HttpFmt.cs b/v2rayN/ServiceLib/Handler/Fmt/HttpFmt.cs index 8e1b6625..9aa23b46 100644 --- a/v2rayN/ServiceLib/Handler/Fmt/HttpFmt.cs +++ b/v2rayN/ServiceLib/Handler/Fmt/HttpFmt.cs @@ -2,6 +2,11 @@ namespace ServiceLib.Handler.Fmt; public class HttpFmt : BaseFmt { + private static string NormalizeColon(string value) + { + return value.Replace(':', ':'); + } + public static ProfileItem? Resolve(string str, out string msg) { msg = ResUI.ConfigurationFormatIncorrect; @@ -36,17 +41,17 @@ public class HttpFmt : BaseFmt var userInfo = string.Empty; if (item.Security.IsNotEmpty() && item.Id.IsNotEmpty()) { - userInfo = $"{item.Security}:{item.Id}"; + userInfo = $"{NormalizeColon(item.Security)}:{NormalizeColon(item.Id)}"; } var protocol = item.StreamSecurity == "tls" ? "https://" : "http://"; if (userInfo.IsNotEmpty()) { - return $"{protocol}{Utils.UrlEncode(userInfo)}@{GetIpv6(item.Address)}:{item.Port}{remark}"; + return $"{protocol}{Utils.UrlEncode(userInfo)}@{GetIpv6(NormalizeColon(item.Address))}:{item.Port}{remark}"; } else { - return $"{protocol}{GetIpv6(item.Address)}:{item.Port}{remark}"; + return $"{protocol}{GetIpv6(NormalizeColon(item.Address))}:{item.Port}{remark}"; } }