#ifndef IWebRequest_H #define IWebRequest_H #include #include #include enum REQ_COMMAND { REQ_LOGIN = 0, REQ_GETJUSIG, REQ_USER_ONLINE, REQ_USER_OFFLINE, REQ_USER_GET, REQ_USER_COURSE_LIST_GET, REQ_USER_COURSE_PPT_GET, REQ_USER_COURSE_CALL_GET, REQ_USER_ORDER_GET, REQ_USER_ORDER_EARNING_RANK, REQ_USER_REMARK_GET, REQ_LOGOUT }; class IWebRequest : public QObject { Q_OBJECT public: explicit IWebRequest(QObject *parent = 0); void readData(QByteArray &data); static IWebRequest *Instance(); public: void sendRequestToServer(int, QStringList params); //信息的请求,参数为获取信息的cmd命令值,没有附带信息 public slots: void getResponseFromServer(); //返回用户请求后服务器下发的数据 void httpFinish(); //会话结束 void slot_downloadProgress(qint64 bytesReceived, qint64 bytesTotal); signals: void response(int, int, QString, QString); //消息类型,成功失败标志,返回消息,其他解析的内容 void errorConnect(QString); void UseLogOut(int); private: QNetworkAccessManager *qam; QNetworkReply *reply; QString answer; static IWebRequest *m_WebRequest; }; #endif // IWebRequest_H