Qt - 如何使用 QNetworkAccessmanager 获取响应文本

发布于 2024-12-13 19:17:01 字数 490 浏览 3 评论 0原文

这是我的代码:

Widget::Widget()
{
    manager = new QNetworkAccessManager(this);
    connect(manager, SIGNAL(finished(QNetworkReply*)),this, SLOT(replyFinished(QNetworkReply*)));

    manager->get(QNetworkRequest(QUrl("http://qt.nokia.com")));
}
void Widget::replyFinished(QNetworkReply* reply)
{
    //some other code here
}

我希望 reply 会有一些像 getrespnsetext() 这样的方法,但它不是......
有人能给我举个例子吗,我需要的只是打印出响应文本(有没有像 Javascript Ajax 那样的方式)
感谢您的帮助!

Here is my code:

Widget::Widget()
{
    manager = new QNetworkAccessManager(this);
    connect(manager, SIGNAL(finished(QNetworkReply*)),this, SLOT(replyFinished(QNetworkReply*)));

    manager->get(QNetworkRequest(QUrl("http://qt.nokia.com")));
}
void Widget::replyFinished(QNetworkReply* reply)
{
    //some other code here
}

I hope that reply will have some method like getrespnsetext() but it not...
Can some one show me an example, all the thing i need is print out the response text (is ther any way like in Javascript Ajax)
Thanks for your help!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

阿楠 2024-12-20 19:17:01

您只需在 replyFinished(...) 函数中使用 reply->readAll() 即可读取所有返回的文本。它返回一个QByteArray,因此您可以从那里做任何您想做的事情。

You only need to use reply->readAll() inside the replyFinished(...) function to read all the returned text. It returns a QByteArray, so you can do wathever you want from there.

嘿哥们儿 2024-12-20 19:17:01

此处查看 QNetworkReply 的文档 ,特别是在完成信号处,它提到您可以使用 readAll() 来获取所有数据的 QByteArray 。假设您知道此类转换是否有效,QString 确实有一个采用 QByteArray 作为参数的构造函数,如文档 此处

Looking at the documentation for QNetworkReply here, specifically at the finished signal, it mentions that you can use readAll() to get a QByteArray of all of the data. Assuming that you know whether or not such a conversion is valid, QString does have a constructor that takes a QByteArray as a parameter, as documented here.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文