Russian Qt Forum
Ноябрь 23, 2024, 05:43 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Как проверить работу прокси?  (Прочитано 6674 раз)
Skala
Гость
« : Июнь 02, 2009, 13:46 »

Не могу найти рекомендации/решения по вопросу:
Программа скачивает из интернета через прокси ( QNetworkProxy::setApplicationProxy(proxy); ). Если прокси не работает, то QHttp выдает ошибку QHttp::HostNotFound.
Как можно уточнить эту ошибку, что проблема именно в прокси-сервере("упал", либо не верно задан и т.п.)?
Записан
mugabe
Гость
« Ответ #1 : Июнь 03, 2009, 10:00 »

А при реальном отсутствии хоста, но при рабочем сервере ту же ошибку выдает?
По идее то не должен ошибки выдавать, а возвращать ответ от прокси.

Ну а если и так, то как вариант можно проверять работоспособность прокси подключаясь к нему с помощью QTcpSocket. Соединение удалось - значит прокси еще жив.
Записан
Admin
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1988



Просмотр профиля
« Ответ #2 : Июнь 03, 2009, 10:11 »

обычно проверяют жив ли хост так

ping host

далее, открыт ли на нем порт

telnet host port

Если вы все это сделаете в QT - то как раз и проверите жив ли прокси.

PS: обычно даже большие программы этим не заморачиваются) типа icq
Записан
mugabe
Гость
« Ответ #3 : Июнь 03, 2009, 10:18 »

обычно проверяют жив ли хост так

ping host

далее, открыт ли на нем порт

telnet host port

Если вы все это сделаете в QT - то как раз и проверите жив ли прокси.

PS: обычно даже большие программы этим не заморачиваются) типа icq
ping не говорит ни о чем Улыбающийся его может не быть, но при этом tcp на необходимый порт будет работать.
к тому же реализация ping-a на Qt возможно только через QProcess, т.е. вызывая сам ping, а это уже не кроссплатформено. Можно, конечно, сделать и свою реализацию ping-a, но для его работы будут нужны права администратора, что не всегда имеется.

Ну а вместо telnet - как раз таки QTcpSocket Улыбающийся
Записан
Skala
Гость
« Ответ #4 : Июнь 03, 2009, 13:41 »

Спасибо всем!
Буду использовать QTcpSocket.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.046 секунд. Запросов: 23.