Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > [QT4]Qhttp работа через прокси ?


Автор: neosapient 2.7.2008, 18:53
Добрый вечер.

Есть пример из QT v4.3   %QT4Dir%\examples\network\http

Есть у меня предположение - что он не работает из-за прокси в моей сетке - как правильно изменить пример (прикрутить задание логина и пароля к моей сетке), чтоб заработало ?

Автор: neosapient 3.7.2008, 12:59
Всем привет.

Вроде разобрался с прокси. 

Код

#include <QtGui>
#include <QtNetwork>
#include <QCoreApplication>

#include "httprequest.h"

int main(int argc, char *argv[])
{
    QCoreApplication app(argc, argv);
    HttpRequest request;
    request.get("http://neosapient.narod.ru/index.html/", "192.168.13.13", 1234, "MyLogin", "MyPassword" );  

    return app.exec();
}

В метод get следует передать точную ссылку на запрашиваемый ресурс и параметры для проксисервера:
- IP
- порт
- логин 
- пароль

Эти параметры будут использоваться в методе 
int QHttp::setProxy ( const QString & host, int port, const QString & username = QString(), const QString & password = QString() ) 
Код

void HttpRequest::get(QString dstUrl, QString ProxyIP, int ProxyPort, QString ProxyLogin, QString ProxyPassword)
{
    QUrl url(dstUrl);

    printf("port is %d\n", url.port());

    http->setHost(url.host(), QHttp::ConnectionModeHttp, url.port() != -1 ? url.port() : 80);
    http->setProxy ( ProxyIP, ProxyPort, ProxyLogin, ProxyPassword) ;

    httpGetId = http->get(url.path());
}


В прикрепленном архиве пример получения страницы через http
Сборка: QT 4.3.4  +  VC7

Автор: ysfox 25.6.2010, 16:30
а я никак в етом примере разобратся не могу
может ктото поможет

нужно просто выкачять нужный файл по ссылке и записать ево в папку + закачька должна отображатся на прогресбаре

помогите пожалуйста!

Автор: SABROG 25.6.2010, 20:06
Изучи лучше этот пример - http://doc.qt.nokia.com/4.6/network-downloadmanager.html

QHttp устаревший класс (deprecated), оставленный для совместимости со старыми проектами, используй QNetworkAccessManager.

Автор: ysfox 29.6.2010, 14:32
Спасибо!  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)