MainWindow
::MainWindow(QWidget *parent
) : ui(new Ui::MainWindow)
{
ui->setupUi(this);
m_netwManager = new QNetworkAccessManager(this);
connect(m_netwManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(slot_netwManagerFinished(QNetworkReply*)));
connect(m_netwManager,SIGNAL(authenticationRequired(QNetworkReply*,QAuthenticator*)),this,SLOT(slot_netwManagerFinished(QNetworkReply*,QAuthenticator*)));
}
void MainWindow::on_action_Download_triggered()
{
QUrl url
(ui
->txtImageAddress
->text
());
QNetworkRequest request(url);
m_netwManager->get(request);
}
void MainWindow::slot_netwManagerFinished(QNetworkReply*,QAuthenticator* auth)
{
auth->setUser("admin");
auth->setPassword("admin");
}
void MainWindow::slot_netwManagerFinished(QNetworkReply *reply)
{
if (reply->error() != QNetworkReply::NoError) {
reply->deleteLater();
return;
}
QString contentType
= reply
->header
( QNetworkRequest
::ContentTypeHeader ).
toString();
if (contentType == "image/jpeg")
{
QVariant redir
= reply
->attribute
(QNetworkRequest
::RedirectionTargetAttribute);
if (redir.isValid()) {
QUrl url
= redir.
toUrl();
if (url.isRelative()) {
url.setScheme(reply->url().scheme());
url.setEncodedHost(reply->url().encodedHost());
}
QNetworkRequest req(url);
m_netwManager->get(req);
reply->deleteLater();
return;
}
pixmap.loadFromData(jpegData);
ui->lblImage->setPixmap(pixmap);
reply->deleteLater();
}
else
{
//VIDEO MJPG DATA
}
}
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
m_netwManager = new QNetworkAccessManager(this);
connect(m_netwManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(slot_netwManagerFinished(QNetworkReply*)));
connect(m_netwManager,SIGNAL(authenticationRequired(QNetworkReply*,QAuthenticator*)),this,SLOT(slot_netwManagerFinished(QNetworkReply*,QAuthenticator*)));
}
void MainWindow::on_action_Download_triggered()
{
QUrl url(ui->txtImageAddress->text());
QNetworkRequest request(url);
m_netwManager->get(request);
}
void MainWindow::slot_netwManagerFinished(QNetworkReply*,QAuthenticator* auth)
{
auth->setUser("admin");
auth->setPassword("admin");
}
void MainWindow::slot_netwManagerFinished(QNetworkReply *reply)
{
if (reply->error() != QNetworkReply::NoError) {
reply->deleteLater();
return;
}
QString contentType = reply->header( QNetworkRequest::ContentTypeHeader ).toString();
if (contentType == "image/jpeg")
{
QVariant redir = reply->attribute(QNetworkRequest::RedirectionTargetAttribute);
if (redir.isValid()) {
QUrl url = redir.toUrl();
if (url.isRelative()) {
url.setScheme(reply->url().scheme());
url.setEncodedHost(reply->url().encodedHost());
}
QNetworkRequest req(url);
m_netwManager->get(req);
reply->deleteLater();
return;
}
QByteArray jpegData = reply->readAll();
QPixmap pixmap;
pixmap.loadFromData(jpegData);
ui->lblImage->setPixmap(pixmap);
reply->deleteLater();
}
else
{
//VIDEO MJPG DATA
}
}
To copy to clipboard, switch view to plain text mode
Bookmarks