正在读取HTTP标头 [英] Reading HTTP headers
本文介绍了正在读取HTTP标头的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试将我的应用程序与Web服务连接,而here,用户建议将自定义标头发送回我的应用程序。
我正在使用此代码
void Coonnec::serviceRequestFinished(QNetworkReply *reply)
{
QByteArray bytes = reply->readAll();
if (reply->error() != QNetworkReply::NoError) {
qDebug() << "Reply error: " + reply->errorString();
}
else
{
qDebug() << "Uploaded: " + QDateTime::currentDateTime().toString();
qDebug() << reply->rawHeaderList();
}
reply->close();
bytes.clear();
reply->deleteLater();
}
我从php发送此标头
header('XAppRequest-Status: complete');
运行应用程序时,我可以看到我得到了这个头,但我无法获取它的值,原因是
reply->rawHeader(bytes);
不返回任何内容。
如何获取值"Complete"?
推荐答案
我建议将插槽连接到您回复的void QNetworkReply::metaDataChanged ()
信号。
Qt文档上写着
只要此回复中的元数据发生更改,就会发出此信号。 元数据是不是内容(数据)本身的任何信息, 包括网络报头。在大多数情况下,元数据 将在接收到数据的第一个字节时完全知道。 但是,可以接收标头或其他 数据处理过程中的元数据。
我确实使用了带有Qt的Web服务/客户端,我注意到一些标题信息在我预期的时候是不可用的!我必须‘等待’此信号来检查标题内容。
这篇关于正在读取HTTP标头的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文