如何使用QNetworkAccessManager将数据发布到URL [英] How can I POST data to a url using QNetworkAccessManager

查看:111
本文介绍了如何使用QNetworkAccessManager将数据发布到URL的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个Web服务,我需要发布一些数据才能使用Qt. 我认为在发布到Web服务时可以使用QByteArray.

I have a webservice that I need to POST some data to using Qt. I figured that I can use a QByteArray when POSTing to the web service.

我的问题是,如何格式化该数组以便在另一端正确解析?

My question is, how can I format this array in order to be parsed correctly at the other end?

这是我到目前为止的代码:

This is the code I have so far:

    // Setup the webservice url
    QUrl serviceUrl = QUrl("http://myserver/myservice.asmx");
    QByteArray postData;

   /* 
   Setup the post data somehow
   I want to transmit:
   param1=string,
   param2=string
   */

    // Call the webservice
    QNetworkAccessManager *networkManager = new QNetworkAccessManager(this);
    connect(networkManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(serviceRequestFinished(QNetworkReply*)));
    networkManager->post(QNetworkRequest(serviceUrl), postData);

谢谢!

推荐答案

我使用过:

QByteArray postData;
postData.append("param1=string&");
postData.append("param2=string");

所以&而不是每个参数后的换行符.

So & instead of newline after each parameter.

这篇关于如何使用QNetworkAccessManager将数据发布到URL的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆