Работа с прокси Titanium.web.proxy

199
17 апреля 2018, 01:55

Как можно остановить get запрос на открытие веб-сайта, если этот сайт находится в моем black списке веб-сайтов? Используя прокси Titanium.web.proxy.

Answer 1

Вот фрагмент кода прокси:

static string ip = Dns.GetHostEntry(host).AddressList[0].ToString();
static ProxyServer proxyServer = new ProxyServer();
public void Start_sniffing()
{
    proxyServer.BeforeRequest += OnRequest;
    ExplicitProxyEndPoint explicitEndPoint = new ExplicitProxyEndPoint(IPAddress.Parse(ip), 8000, true)
    {
    };
    proxyServer.AddEndPoint(explicitEndPoint);
    proxyServer.Start();
    foreach (var endPoint in proxyServer.ProxyEndPoints)
        Console.WriteLine("Listening on '{0}' endpoint at Ip {1} and port: {2} ",
        endPoint.GetType().Name, endPoint.IpAddress, endPoint.Port);
    proxyServer.SetAsSystemHttpProxy(explicitEndPoint);
    Console.Read();
}
static private async Task OnRequest(object sender, SessionEventArgs e)
{
    if (e.WebSession.Request.Method == "GET")
    {
        //Console.WriteLine(e.WebSession.Request.Url);
        Console.WriteLine(e.WebSession.Request.RequestUri.Host);
        foreach (Class2 c3 in blackList)
        {
            if (e.WebSession.Request.RequestUri.Host == c3.name)
            {
                switch (c3.status_id)
                {
                    case 1: MessageBox.Show("Сайт {0} не безопасен и Заблокирован!!!", c3.name);break;
                    case 2: MessageBox.Show("Сайт {0} Не рекомендуется!!!", c3.name);break;
                }
            break;
            }
        }
    }
}

Так вот если срабатывает OnRequest(), то происходит проверка, и если запрос Get, то мы ищем веб-ссылку в списке, и если находим, выводим сообщение. Но вот как остановить загрузку веб-страницы, вопрос?

READ ALSO
CSharpCodeProvider, название компилируемого приложения

CSharpCodeProvider, название компилируемого приложения

Здравствуйте, есть проект, где компилируется уже готовый код с подставлением своих данных, в одном месте требуется указать -

191
Scroll графика в c#

Scroll графика в c#

Делаю программу, которая должна довольно длительное время добавлять точки в line chartПроблем никаких нет, есть только вопрос

152
Как брать значение из Entry в Xamarin xaml?

Как брать значение из Entry в Xamarin xaml?

Нужно взять значения из Login и Password полей

156