且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

使用Qt中的命名参数列表进行HTTP POST请求

更新时间:2022-03-06 05:55:38

QUrl params;

params.addQueryItem("key1", "value1");
params.addQueryItem("key2", "value2");

QUrl resource("http://server.com/form.php");
QNetworkAccessManager* manager = new QNetworkAccessManager(this);

connect(manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(handleEndOfRequest(QNetworkReply*)));

QNetworkRequest request(resource);
//Force Content-Type header
request.setHeader(QNetworkRequest::ContentTypeHeader, "application/x-www-form-urlencoded");

manager->post(request, params.encodedQuery());

此代码假定您当前的对象是QObject(作为QNeworkAccessManager和slots声明的父对象)

This code assumes that your current object is a QObject (passed as a parent for QNeworkAccessManager and slots declaration)