一、代码
#ifndef FILEUPLOAD_H
#define FILEUPLOAD_H
#include <QObject>
#include <QHttpMultiPart>
#include <QHttpPart>
#include <QFile>
#include <QNetworkAccessManager>
#include <QNetworkReply>
#include <QNetworkRequest>
#include <QUrl>
#include <QMap>
#include <QJsonObject>
#include <QJsonArray>
class FileUpload: public QObject
{
Q_OBJECT
public:
FileUpload(QObject *parent = nullptr);
void setHeader(const QJsonObject &headerobj);
void upload(const QString &file, const QUrl &url);
private slots:
void on_finished();
void on_error(QNetworkReply::NetworkError error);
void on_redirected(const QUrl &url);
void on_uploadProgress(qint64 bytesSent, qint64 bytesTotal);
private:
QJsonObject m_headerobj;
QNetworkAccessManager m_netMgr;
QNetworkRequest m_req;
QNetworkReply *m_pReply;
QFile *m_pFile;
QString m_FilePath;
QUrl m_url;
};
#endi