Проблема при работе с TitaniumWeb Proxy

Рейтинг: 1Ответов: 0Опубликовано: 05.04.2023

Посидел я тут, разобрался чуть в TitaniumWeb Proxy, мне нужно было сделать софт, который будет подменять ссылки, которые будет открывать юзер, на установленные мной ссылки. Допустим, при открытии вк, открывался ютуб. Написал код, который изменяет системные прокси на локалхост с нужным мне портом, следовательно, браузеры, у которых стоят настройки прокси-сервера "Использовать системные прокси", будут ходить на сайты через локалхост.

        public static void Start()
    {
        // Создаем новый экземпляр класса ProxyServer
        var proxyServer = new ProxyServer();

        // Добавляем обработчик события BeforeRequest, который будет вызываться перед отправкой запроса на сервер
        proxyServer.BeforeRequest += OnRequest;
        

        // Создаем новый прозрачный прокси-эндпоинт, который будет перенаправлять трафик на локальный хост
        var transparentEndPoint = new TransparentProxyEndPoint(System.Net.IPAddress.Any, port, true)
        {
            // Устанавливаем флаг, чтобы включить перенаправление трафика на локальный хост
            GenericCertificateName = "localhost"
        };

        // Добавляем прозрачный прокси-эндпоинт в прокси-сервер
        proxyServer.AddEndPoint(transparentEndPoint);

        // Запускаем прокси-сервер
        proxyServer.Start();

        Console.WriteLine($"Прокси-сервер запущен на порту: {transparentEndPoint.Port}");

        Console.ReadKey();
        proxyServer.Stop();
        // Ожидаем завершения работы прокси-сервера
        //await Task.Delay(-1);
    }

    private static async Task OnRequest(object sender, SessionEventArgs e)
    {
        // Если url сайта vk.com, то перенаправляем запрос на youtube.com
        if (e.HttpClient.Request.RequestUri.Host.Contains("vk.com"))
        {
            e.Redirect("https://www.youtube.com/");
            MessageBox.Show("Перенаправлен!");
        }
    }

вот написанный мною код, но в нём есть проблема.Код то работает, в смысле запускается и пакеты ловит, но переадресацию делать не хочет, во-первых, он слишком много их делает, видимо, он обрабатывает каждый пакет, где url содержит линк нужного мне сайта, и с каждого пакета делает переадресацию, поэтому браузер у меня очень медленно грузит, а в конце вообще не загружает и ошибку выдаёт, что сайт сделал слишком много переадресаций, но так и не переадресовывает. Также проблема заключается в том, что я не могу нормально работать с браузером, скорее всего, потому что прокси-сервер не возвращает никакого ответа, чтобы в браузере вывелась страница, которую я запрашиваю(любая страница), это тоже должно реализовываться через TitaniumWeb Proxy или работать с чем-то другим? Выводится вот такая ошибка в браузере, и так с любой ссылкой введите сюда описание изображения

Ответы

Ответов пока нет.