Получите настройки прокси IE из сценария действия

Если вы посмотрите на InnerException, то увидите, что:

«Не удалось разрешить удаленное имя:« www.fc.edu »»

Этот URL также не работает в моем браузере.

Чтобы получить ответ HTTP, вам нужно, чтобы клиент имел возможность связаться с сервером (даже для того, чтобы получить ошибку 404 ), и в вашем случае произошла ошибка в DNS уровень . [тысяча сто двадцать два]

Некоторые браузеры имеют автозаполнение для таких случаев, когда, если определенный URL не найден, браузер повторяет попытку с другим суффиксом / префиксом, например:

try "x"
if didn't work, try "www." + x
if this didn't work try "www." + x + ".com"
if this didn't work try "www." + x + ".net"
if this didn't work try "www." + x + "." + currentRegionSuffix.

Но обратите внимание, что вы можете измените код с:

catch (Exception e)
{

}

на:

catch (HttpRequestException e)
{
    Console.WriteLine(e.InnerException.Message);
}

И вы сможете увидеть причину вашей ошибки.

Кроме того, Вы никогда не должны ловить универсальный Exception, если метатель не бросил универсальный Exception , и даже чем, никогда не поймать и ничего не делать с исключение, по крайней мере, записать его.

Обратите внимание, что поскольку вы ожидаете только одной задачи, которую вы можете использовать:

urlTester.RunTestAsync().Wait();

Вместо:

Task.WhenAll(urlTester.RunTestAsync());

Task.WhenAll создает новый Task, когда заданный Task с завершено. в вашем случае вам нужно Task.WaitAll или Task.WhenAll(...).Wait() .

1
задан Golovko 19 June 2009 в 07:28
поделиться

1 ответ

Ни в коем случае, вы не можете определить текущие настройки прокси-сервера браузера.

Решением может быть добавление окна параметров в ваше приложение. В этом случае пользователи могут определять новые записи прокси, и ваше приложение может их использовать.

2
ответ дан 3 September 2019 в 01:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: