我在 Qt 4 中创建了一个使用 QHttp 类的应用程序。新的 Qt 5 在 QNetworkAccessManager 类中具有几乎相同的功能,但我需要进行一些调整:
我的一段代码是:
http=new QHttp ( this ); if ( config->brokerurl.indexOf ( "https://" ) ==0 ) neworkAccess-> http->setHost ( lurl.host(),QHttp::ConnectionModeHttps, lurl.port ( 443 ) ); else http->setHost ( lurl.host(),QHttp::ConnectionModeHttp, lurl.port ( 80 ) );
我找到了使用 URL 地址发布消息的 QNetworkRequest 类,但我使用的是在不同端口工作的 http 和 https,所以我还需要设置这个 ConnectionMode(http 或 https)。
有没有办法在 QNetworkRequest 中设置 ConnectionMode?
我有这段代码:
http->post ( lurl.path(),req.toUtf8(),&httpSessionAnswer );
这在 Qt 4 中具有签名:
int post ( const QString & path, const QByteArray & data, QIODevice * to = 0 )<br><br>
在 Qt 5 中,我们有:
QNetworkReply * post ( const QNetworkRequest & request, QIODevice * data ) QNetworkReply * post ( const QNetworkRequest & request, const QByteArray & data )
发布消息(请求+数据)并获得答案(
QIODevice * data
)的新 Qt 5 等效项是什么?