diff --git a/lib/data/repository/profiles_repository_impl.dart b/lib/data/repository/profiles_repository_impl.dart index 4916c905..8ad0c83e 100644 --- a/lib/data/repository/profiles_repository_impl.dart +++ b/lib/data/repository/profiles_repository_impl.dart @@ -180,7 +180,7 @@ class ProfilesRepositoryImpl return TaskEither( () async { final path = filesEditor.configPath(fileName); - final response = await dio.download(url, path); + final response = await dio.download(url.trim(), path); final parseResult = await singbox.parseConfig(path).run(); return parseResult.fold( (l) async { diff --git a/lib/utils/link_parsers.dart b/lib/utils/link_parsers.dart index 59345ad1..c361038b 100644 --- a/lib/utils/link_parsers.dart +++ b/lib/utils/link_parsers.dart @@ -9,7 +9,7 @@ abstract class LinkParser { static ProfileLink? simple(String link) { if (!isUrl(link)) return null; - final uri = Uri.parse(link); + final uri = Uri.parse(link.trim()); final params = uri.queryParameters; return ( url: uri @@ -23,7 +23,7 @@ abstract class LinkParser { } static ProfileLink? deep(String link) { - final uri = Uri.parse(link); + final uri = Uri.parse(link.trim()); if (protocols.none((e) => uri.scheme == e)) return null; if (uri.authority != 'install-config') return null; final params = uri.queryParameters;