Извиняюсь за такой баянный вопрос. Но я (с коллегой, парное программирование) пытался (-сь) найти решение около 5 часов.
Задание: нужно послать запрос на видокамеру. Получить ответ, если это возможно и данные с этой камеры (системная информация - версия ПО, ...что-то там еще... + получить с нее изображение).
Исходные данные: IP камеры и порт. То есть получение версии условно выглядит так:
http://123.123.123.123/...getversion, где набор цифр между слэшами - IP.
Проблема: синтаксис. Пересмотрели 50 примеров, если не больше, но ничего толком не работает.
Например, пытались через QHttp. Нашли пару примеров, но ни черта ни работают и ни черта не понятно. Особенно какой-то параметр QUIDevice в методе get. get кажется самым правильным из всех.
1. Какую лучше всего использовать библиотеку? Говорят, QHttp устарела, всякая фигня.. Но при этом пример запроса в ней выглядит довольно просто.
2. Если можно, приведите ссылку с работающим примером. Или напишите код, в котором вы уверены, сами.
Спасибо.
Примечание:
vabad,
1. Скачивание чего? Информации?
2. Если this, то получается нужно свой класс писать?
3. QNetworkReply* - что это значит? Какой-то пустой указатель, разве это возможно?
4. Зачем здесь нужны сигнал и слот?
Такой пример пробовали, не прокатил.
Нашли способ все-таки сами (если кому понадобится):
QString httpGet(QUrl url)
{
QNetworkAccessManager *manager = new QNetworkAccessManager();
QNetworkReply *http = manager->get(QNetworkRequest(url));
QEventLoop eventLoop;
QObject::connect(http,SIGNAL(finished()),&eventLoop, SLOT(quit()));
eventLoop.exec();
return QString::fromUtf8(http->readAll());
}
RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.
Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.
Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.