第二个项目又需要用到 Qt 的 QNetworkAccessManager 来做http请求,
想想还是写个标准点的请求库吧。每次写重复代码也累。
//业务无关的http https 上传 下载 表单提交 库----业务层主要做接口参数拼接.rsp数据解析 json之类的
//简单文件上传下载—也可以加上,但估计目前也用不上
//post表单那些接口,需要用的时候再加吧
// get post https rsp req
// 下载 上传 数据
httpnet.h
#pragma once
#include "common.h"
#include <QObject>
#include <QNetworkAccessManager>
#include <QNetworkReply>
#include <QMutex>
#include <QTimer>
struct HttpReqInfo
{
QNetworkReply* reply = nullptr;
int timeout = -1;
int currentMs;
HttpReqInfo() {
currentMs = QDateTime::currentMSecsSinceEpoch();
}
HttpReqInfo(int _out) {
timeout = _out;
currentMs = QDateTime::currentMSecsSinceEpoch();
}
bool httpOutTime() {
return ((QDateTime::currentMSecsSinceEpoch() - currentMs) > timeout);
}
};
enum class HttpState{NONE,HTTP_timeout,HTTP_success,HTTP_faile};
class HttpNet : public QObject
{
Q_OBJECT
public:
~Http