diff --git a/v2rayN/ServiceLib/Handler/ConfigHandler.cs b/v2rayN/ServiceLib/Handler/ConfigHandler.cs index 981fd2f5..8450cba8 100644 --- a/v2rayN/ServiceLib/Handler/ConfigHandler.cs +++ b/v2rayN/ServiceLib/Handler/ConfigHandler.cs @@ -1412,6 +1412,11 @@ public class ConfigHandler { profileItem = V2rayFmt.ResolveFull(strData, subRemarks); } + //Is Html Page + if (profileItem is null && HtmlPageFmt.IsHtmlPage(strData)) + { + return -1; + } //Is Clash configuration if (profileItem is null) { diff --git a/v2rayN/ServiceLib/Handler/Fmt/BaseFmt.cs b/v2rayN/ServiceLib/Handler/Fmt/BaseFmt.cs index 61614f13..965efbb1 100644 --- a/v2rayN/ServiceLib/Handler/Fmt/BaseFmt.cs +++ b/v2rayN/ServiceLib/Handler/Fmt/BaseFmt.cs @@ -220,14 +220,7 @@ public class BaseFmt protected static bool Contains(string str, params string[] s) { - foreach (var item in s) - { - if (str.Contains(item, StringComparison.OrdinalIgnoreCase)) - { - return true; - } - } - return false; + return s.All(item => str.Contains(item, StringComparison.OrdinalIgnoreCase)); } protected static string WriteAllText(string strData, string ext = "json") diff --git a/v2rayN/ServiceLib/Handler/Fmt/HtmlPageFmt.cs b/v2rayN/ServiceLib/Handler/Fmt/HtmlPageFmt.cs new file mode 100644 index 00000000..38d139d4 --- /dev/null +++ b/v2rayN/ServiceLib/Handler/Fmt/HtmlPageFmt.cs @@ -0,0 +1,11 @@ +using SkiaSharp; + +namespace ServiceLib.Handler.Fmt; + +public class HtmlPageFmt : BaseFmt +{ + public static bool IsHtmlPage(string strData) + { + return Contains(strData, "