Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Получение файла по сети
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt Ввод/Вывод, Сеть. Межпроцессное взаимодействие
dejavu
Привет всем.
Получаю файлы по сети так:
QNetworkAccessManager * manager = new QNetworkAccessManager(this);
connect(manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(fileIsReady(QNetworkReply*)) );
manager->get(QNetworkRequest(QUrl("http://example.com/abrakadabra.html")));
...
void CClass::fileIsReady( QNetworkReply * reply)
{
  QTemporaryFile temp_file;
  temp_file.write(reply->readAll());
}
Файлы получаются без проблем. НО! Если стоит редирект на другой URL, то скачивается html файл с редиректом.
Может я туплю, подскажите, как поймать этот так его растак редирект? Да и не плохо было бы ловиь 404 и прочие ошибки.
ViGOur

   QVariant varRedirect = reply->attribute(QNetworkRequest::RedirectionTargetAttribute);
   QUrl urlRedirect = varRedirect.toUrl();
   if(!urlRedirect.isEmpty())
   {
      qDebug() << "Redirection url: " << urlRedirect.toString();
      // Здесь заново получаешь страницу urlRedirect.toString()
   }
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.