Работаю с библиотекой http://vknet.github.io/vk/ . И возникла проблема при авторизации, точнее создания соединения через прокси.
int appID = 12345; // ID приложения
string email = "test@test.com"; // email или телефон
string pass = "password"; // пароль для авторизации
Settings scope = Settings.Friends; // Приложение имеет доступ к друзьям
var vk = new VkApi();
vk.Authorize(new ApiAuthParams
{
ApplicationId = appID,
Login = email,
Password = pass,
Settings = scope
Host = "185.22.173.70"
Port = 8080
};
высыпается исключение
Вызвано исключение: "System.UriFormatException" в System.dll
System.UriFormatException: Недопустимый URI: Невозможно определить формат URI.
в System.Uri.CreateThis(String uri, Boolean dontEscape, UriKind uriKind)
в System.Uri..ctor(String uriString)
в VkNet.Utils.WebProxy.GetProxy(String host, Nullable1 port, String proxyLogin, String proxyPassword)
в VkNet.VkApi.Authorize(UInt64 appId, String emailOrPhone, String password, Settings settings, Func1 code, Nullable1 captchaSid, String captchaKey, String host, Nullable1 port, String proxyLogin, String proxyPassword)
в VkNet.VkApi.AuthorizeWithAntiCaptcha(UInt64 appId, String emailOrPhone, String password, Settings settings, Func1 code, Nullable1 captchaSid, String captchaKey, String host, Nullable`1 port, String proxyLogin, String proxyPassword)
в VkNet.VkApi.Authorize(ApiAuthParams params)
в vk_like.forms.Main..ctor() в C:\Users\Пользователь\Desktop\vk_like\vk_like\forms\Main.cs:строка 37
Посмотрел исходники, там
public static IWebProxy GetProxy(string host = null, int? port = null, string proxyLogin = null, string proxyPassword = null)
{
if (host == null || port == null)
{
return null;
}
return new WebProxy(new Uri($"http://{host}:{port.Value}"))
{
Credentials = GetCredentials(proxyLogin, proxyPassword)
};
}
private static ICredentials GetCredentials(string proxyLogin = null, string proxyPassword = null)
{
if (proxyLogin != null && proxyPassword != null)
{
return new NetworkCredential(proxyLogin, proxyPassword);
}
// Авторизация с реквизитами по умолчанию (для NTLM прокси)
return CredentialCache.DefaultCredentials;
}
вроде все должно работать, но не работает, может кто помочь?
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники