【发布时间】:2012-06-13 20:29:05
【问题描述】:
我试图使用 QNetworkAccessmanager 向 localhost/conductor/api/provider_accounts.xml 发送请求,但问题是当我用浏览器打开它时,我会得到适当的输出,但是当我对 QNetworkAccessmanager 执行相同操作时,我就是什么都得不到。这是我的代码
void ServiceProvider::replyFinished(QNetworkReply * reply)
{
qDebug()<<reply->readAll();
QString data=(QString)reply->readAll();
qDebug()<<data;
QXmlStreamReader xml(data);
QXmlStreamAttributes attrib;
while(!xml.atEnd()){
xml.readNextStartElement();
if(xml.name()=="name" && !xml.isEndElement()){
attrib=xml.attributes();
QString name=attrib.value("name").toString();
qDebug()<<name;
}
}
}
void ServiceProvider::pushImage()
{
manager = new QNetworkAccessManager(this);
manager->get(QNetworkRequest(QUrl("https://localhost/conductor
/api/provider_accounts.xml")));
connect(manager, SIGNAL(finished(QNetworkReply*)),
this, SLOT(replyFinished(QNetworkReply*)));
}
【问题讨论】:
-
您正在使用 https 协议的链接。您是否尝试连接 SSLErrors 信号并查看错误是什么? U mite 必须安装 OpenSSL。
标签: xml qt qnetworkaccessmanager