mirror of
https://gitee.com/spark-store-project/spark-store
synced 2026-03-25 23:09:44 +08:00
4.0
This commit is contained in:
43
src/utils/httprequest.cpp
Normal file
43
src/utils/httprequest.cpp
Normal file
@@ -0,0 +1,43 @@
|
||||
#include "httprequest.h"
|
||||
|
||||
|
||||
|
||||
HttpRequest::HttpRequest()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void HttpRequest::getRequest(QNetworkRequest request)
|
||||
{
|
||||
QNetworkAccessManager *naManager=new QNetworkAccessManager(this);
|
||||
|
||||
request.setRawHeader("User-Agent", "Mozilla/5.0");
|
||||
request.setRawHeader("Content-Type", "charset='utf-8'");
|
||||
request.setRawHeader("Content-Type", "application/json");
|
||||
|
||||
naManager->get(request);
|
||||
QObject::connect(naManager,&QNetworkAccessManager::finished,this,&HttpRequest::readdata_slot);
|
||||
}
|
||||
void HttpRequest::readdata_slot(QNetworkReply *reply)
|
||||
{
|
||||
emit finished(reply->readAll());
|
||||
}
|
||||
QString HttpRequest::postRequest(QString url, QString jsondata)
|
||||
{
|
||||
QByteArray array= jsondata.toLatin1();
|
||||
QNetworkRequest request;
|
||||
QNetworkAccessManager *naManager=new QNetworkAccessManager(this);
|
||||
QUrl strUrl = url;
|
||||
request.setUrl(strUrl);
|
||||
request.setRawHeader("Content-Type", "charset='utf-8'");
|
||||
request.setRawHeader("Content-Type", "application/json");
|
||||
|
||||
QNetworkReply* reply = naManager->post(request, array);
|
||||
QEventLoop eventLoop;
|
||||
connect(naManager, SIGNAL(finished(QNetworkReply*)), &eventLoop, SLOT(quit()));
|
||||
eventLoop.exec();
|
||||
QTextCodec* codec = QTextCodec::codecForName("utf8");
|
||||
QString strReply = codec->toUnicode(reply->readAll());
|
||||
reply->deleteLater();
|
||||
return strReply;
|
||||
}
|
||||
26
src/utils/httprequest.h
Normal file
26
src/utils/httprequest.h
Normal file
@@ -0,0 +1,26 @@
|
||||
#ifndef HTTPREQUEST_H
|
||||
#define HTTPREQUEST_H
|
||||
|
||||
#include <QObject>
|
||||
#include <QNetworkAccessManager>
|
||||
#include <QNetworkReply>
|
||||
#include <QNetworkRequest>
|
||||
#include <QEventLoop>
|
||||
#include <QTextCodec>
|
||||
class HttpRequest : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
HttpRequest();
|
||||
|
||||
void getRequest(QNetworkRequest request);
|
||||
|
||||
QString postRequest(QString url, QString jsondata);
|
||||
signals:
|
||||
void finished(QString);
|
||||
private slots:
|
||||
void readdata_slot(QNetworkReply *reply);
|
||||
};
|
||||
|
||||
#endif // HTTPREQUEST_H
|
||||
|
||||
Reference in New Issue
Block a user