httprequest.h 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. #ifndef HTTPREQUEST_H
  2. #define HTTPREQUEST_H
  3. #include <QObject>
  4. #include <QMap>
  5. #include <QJsonObject>
  6. #include <QNetworkAccessManager>
  7. #include <QNetworkRequest>
  8. #include <QHttpMultiPart>
  9. #include "globalinfo.h"
  10. class HttpRequest : public QObject
  11. {
  12. Q_OBJECT
  13. public:
  14. explicit HttpRequest(QObject *parent = nullptr);
  15. inline void setUserToken(const QString & aid, const QString & token)
  16. {
  17. _aid = aid;
  18. _token = token;
  19. }
  20. inline QString getUser()
  21. {
  22. return _aid;
  23. }
  24. inline QString getUserToken()
  25. {
  26. return _token;
  27. }
  28. signals:
  29. void result(int code, const QJsonObject & body);
  30. public slots:
  31. void get(const QString & url);
  32. void post(const QString & url, const QMap<QString,QString> & body);
  33. void post(const QString & url, const QJsonObject & body);
  34. // void post(const QString & url, const QMap<QString,QVariant> body);
  35. private slots:
  36. void finishRequest(QNetworkReply*);
  37. private:
  38. void initRequest(QNetworkRequest & req, bool post = false);
  39. void initMultiPart(QHttpMultiPart & part,const QMap<QString,QString> body);
  40. // void initMultiPart(QHttpMultiPart & part,const QMap<QString,QVariant> body);
  41. private:
  42. QString _aid;
  43. QString _token;
  44. QNetworkAccessManager _manager;
  45. };
  46. #endif // HTTPREQUEST_H