62 lines
1.7 KiB
C
62 lines
1.7 KiB
C
|
|
#ifndef NETMGR_H
|
|||
|
|
#define NETMGR_H
|
|||
|
|
#include <qglobal.h>
|
|||
|
|
#include <QObject>
|
|||
|
|
#include <QMap>
|
|||
|
|
|
|||
|
|
class QNetworkAccessManager;
|
|||
|
|
class QNetworkReply;
|
|||
|
|
class QFile;
|
|||
|
|
|
|||
|
|
class QNetworkRequest;
|
|||
|
|
|
|||
|
|
class NetMgr:public QObject
|
|||
|
|
{
|
|||
|
|
Q_OBJECT
|
|||
|
|
signals:
|
|||
|
|
void sigNetMgr(QString sAddr,const QVariant& variant);
|
|||
|
|
public:
|
|||
|
|
static NetMgr& instance();
|
|||
|
|
NetMgr(QObject* parent = nullptr);
|
|||
|
|
~NetMgr();
|
|||
|
|
public:
|
|||
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD>б<EFBFBD>
|
|||
|
|
void RequestFileList(const QString& sAddr);
|
|||
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>Ϣ
|
|||
|
|
void RequestFileInfo(const QString& sAddr);
|
|||
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
|||
|
|
void RequestDownload(const QString& sUrl, const QString& sFileName, const QString& sFileSavePath);
|
|||
|
|
void RequestChannelInfo(const QString& sAddr);
|
|||
|
|
public:
|
|||
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ
|
|||
|
|
void PostMultiPart(QNetworkRequest& req, QMap<QString, QString> &postData);
|
|||
|
|
void PostJson(QNetworkRequest& req, QJsonObject &postData);
|
|||
|
|
void PostData(QNetworkRequest& req, QByteArray &postData);
|
|||
|
|
void DownLoad(QNetworkRequest& req,const QString& sFileSavePath);
|
|||
|
|
void GetData(QNetworkRequest& req);
|
|||
|
|
|
|||
|
|
void AddMultiPartSignature(QNetworkRequest& req, QMap<QString, QString> &postData);
|
|||
|
|
void AddJsonSignature(QNetworkRequest& req, QJsonObject &postData);
|
|||
|
|
void AddDataSignature(QNetworkRequest& req, QByteArray &postData);
|
|||
|
|
void AddSignature(QNetworkRequest& req, QString &sSrcKey);
|
|||
|
|
|
|||
|
|
private slots:
|
|||
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ
|
|||
|
|
void httpFinished(QNetworkReply * reply);
|
|||
|
|
private:
|
|||
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
void parseData(const QByteArray& szData, const QString& sUrlPath, QString sAddr);
|
|||
|
|
|
|||
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF>HTTP<54><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>IP<49><50>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˭<EFBFBD><CBAD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>HTTP<54><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
void setReqUserAttr(QNetworkRequest& req,QVariant attr);
|
|||
|
|
|
|||
|
|
private:
|
|||
|
|
|
|||
|
|
QNetworkAccessManager *m_netMgr;
|
|||
|
|
QMap<QNetworkReply*,QFile*> m_mpDownload;
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
extern NetMgr *g_NetMgr;
|
|||
|
|
|
|||
|
|
#endif // NETMGR_H
|