Update HttpFmt.cs

This commit is contained in:
freekof 2026-02-01 14:07:32 +08:00 committed by GitHub
parent 2428985e5a
commit 6e2cd1c23e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -2,6 +2,11 @@ namespace ServiceLib.Handler.Fmt;
public class HttpFmt : BaseFmt public class HttpFmt : BaseFmt
{ {
private static string NormalizeColon(string value)
{
return value.Replace('', ':');
}
public static ProfileItem? Resolve(string str, out string msg) public static ProfileItem? Resolve(string str, out string msg)
{ {
msg = ResUI.ConfigurationFormatIncorrect; msg = ResUI.ConfigurationFormatIncorrect;
@ -36,17 +41,17 @@ public class HttpFmt : BaseFmt
var userInfo = string.Empty; var userInfo = string.Empty;
if (item.Security.IsNotEmpty() && item.Id.IsNotEmpty()) 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://"; var protocol = item.StreamSecurity == "tls" ? "https://" : "http://";
if (userInfo.IsNotEmpty()) 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 else
{ {
return $"{protocol}{GetIpv6(item.Address)}:{item.Port}{remark}"; return $"{protocol}{GetIpv6(NormalizeColon(item.Address))}:{item.Port}{remark}";
} }
} }