Howdy!
Trying to make GET request with Qt5 and get the response.
But slots never called and no network activity from application.
connect returns true.
Perhaps QNetworkAccessManager get destroyed after calling get method.

Give me explanation how it's works.

Thanks!

appapi.h
Qt Code:
  1. #include <QObject>
  2. #include <QNetworkAccessManager>
  3. #include <QNetworkReply>
  4. #include <QNetworkRequest>
  5.  
  6. class AppApi : public QObject
  7. {
  8. Q_OBJECT
  9. public:
  10. explicit AppApi(QObject *parent = 0);
  11. void makeRequest();
  12. QNetworkAccessManager* manager;
  13.  
  14. signals:
  15.  
  16. public slots:
  17. void replyFinished(QNetworkReply* reply);
  18. void slotError(QNetworkReply::NetworkError error);
  19. };
To copy to clipboard, switch view to plain text mode 

appapi.cpp
Qt Code:
  1. AppApi::AppApi(QObject *parent) :
  2. QObject(parent)
  3. {
  4. this->manager = new QNetworkAccessManager(this);
  5. }
  6.  
  7. void AppApi::makeRequest()
  8. {
  9. connect(this->manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(replyFinished(QNetworkReply*)));
  10.  
  11. QNetworkRequest request;
  12. request.setUrl(QUrl("http://google.com"));
  13.  
  14. QNetworkReply *reply = this->manager->get(request);
  15. connect(reply, SIGNAL(error(QNetworkReply::NetworkError)), this, SLOT(slotError(QNetworkReply::NetworkError)));
  16. }
  17.  
  18. void AppApi::replyFinished(QNetworkReply* reply)
  19. {
  20. qDebug("replyFinished");
  21. }
  22.  
  23. void AppApi::slotError(QNetworkReply::NetworkError error)
  24. {
  25. qDebug("slotError");
  26. }
To copy to clipboard, switch view to plain text mode