问题标签 [qnetworkreply]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
qt - QUrl 和 QNetworkReply 错误
在带有 MingW 的 Windows 8.1(64 位)上使用 Qt 5.4 32 位。
我遇到了一个奇怪的问题。考虑一下:
起初我的代码运行良好,但后来它停止工作(可能是由于我的更改,不确定它是什么),唯一的解决方法是当我明确地编写 url 时:
生成的 URL 完全相同,但由于某种原因,当我事先创建它并将其传递给 QNetworkReply 时,它不接受它:
例如,如果是这种情况,则不会产生任何结果。我觉得我在这里遗漏了一些非常明显的东西......
错误是:
谢谢!
qt - 即使 http 状态不是 200 OK,如何让 QNetworkReply 读取所有接收到的数据
我的问题如下:
时的响应QNetworkReply::readAll
为空QNetworkReply::error() != NoError
。这是正常的吗?
从以下文档QIODevice::readAll
:
该功能无法报错;返回空
QByteArray()
值可能意味着当前没有数据可供读取,或者发生错误。
这意味着每次 http 状态与 200 OKQNetworkReply
不同时,都无法提供其他标题作为响应的信息?
我有一个 Node+Express 服务器,它总是发送详细的 --json-- 描述,以防 http 状态不同于 200;我无法从 QNAM 上的 Qt 客户端获得此描述。
我该如何改变这种行为,我的意思是,QNetworkReply
即使 http 状态不是 200 OK,也要读取所有接收到的数据?
Qt 版本为 5.3,操作系统 Win 7 64b。
c++ - Qt:在QNetworkAccessManager中发送请求后连接信号
我正在检查一些使用 QNetworkAccessManager 的简单示例,我发现了这一点(假设管理器是 QNetworkAccessManager:
据我了解,对 manager->get 的调用将发送一个 GET 请求。但是,处理该请求的答案的插槽仅在发送呼叫后才连接,这对我来说似乎没有意义。这是我的问题:
- 请求完成后将插槽连接到信号不是问题吗?是否会发生请求已完成并在连接发生之前发出信号,因此信号被错过并且从未被相应的插槽处理的情况?
谢谢!
L.
更新:正如cyber_raj所指出的,这里已经回答了这个问题:Qt signal slot connection - QNetworkAccessManager
qt5 - Qt5 QNetworkAccessManager 完成信号永远不会发出
我有一个非常令人困惑的问题。
我有一个从一些 ftp 服务器下载文件的简单项目。它工作得很好。
然后,我尝试将相同的代码实现到一个更大的项目中(第一个是控制台应用程序,第二个是 GUI,但我认为这不会改变任何东西..)。
在进行了一些调试之后,在我看来,finished()
来自QNetworkAccessManager
某种方式的信号永远不会被发出(或接收)。同样,完全相同的代码行作为一个单独的项目工作。
下载器.h
下载器.cpp
mainwindow.cpp(重要部分)
无法理解这一点。
欢迎任何帮助,
谢谢!
编辑>更多信息:调试器发布此>
网址,调试
条目:doDownload
退出:下载
qt - Qt5:下载文件而不保存到硬盘
我正在尝试在 Qt5 中下载文件,但下载后该文件不得位于硬盘上。澄清>我的应用程序将使用下载的文件来更新某些固件,我不希望下载的更新保留在用户的硬盘上,因为它可能会被盗。
所以,我试图QFile
从QNetworkReply*
但没有将它保存到硬盘驱动器上的某个路径。
我正在使用下载文件QNetworkAccessManager
并将数据存储到QNetworkReply
. QFile
我以前总是用with做 a QNetworkReply*
,但现在我不能这样做了。
我找到了QTemporaryFile
在使用文件后立即删除文件的类,但这仍然给用户留下了一些稍后查找文件的选项。
我尝试将其类型转换QNetworkReply*
为QFile
,但未能使其正常工作,似乎 QFile 不能没有硬盘上的路径。
有谁知道如何做到这一点,以及如何做到这一点?
感谢大家。
c++ - QT NetworkManager 初始化和异步问题
首先,我想在创建此类时触发初始化过程。(已知主机的 DNS 查找,并在指定数量的插槽上与主机进行预握手 - 一旦经过测试,就不应进行硬编码) - 在创建所有类时,正在读取配置等。
其次,我想根据特定主机的允许(和打开)插槽允许并行请求发送。
坦率地说,以下代码存在多个问题;
- 谷歌似乎在多个请求同时重定向到该主机似乎导致灾难性失败,当 x 数或请求触发完成信号时,该信号调用我的重定向检查并且第一个请求被重定向,我这样做似乎收到了第一个回复,并带有 x 条错误消息。
- 出于同样的原因,我似乎无法从 httpFinished 调用 deleteLater()
- 我找不到等待请求的槽号完成以启动队列中的下一个请求的方法
主要目标是使用单个网络类从多个 API 收集数据,这些请求可能会同时发生,也可能不会。还会像 POST 等一样发出另一个请求 -可能是 1 个类/API?
请注意,代码只是概念测试,仅用于测试目的,在修复后应进行清理,这根本不是我想要的工作方式。
星云.pro
网络.h
网络.cpp
主文件
请注意,我对高级 C++ 项目和 QT 还是很陌生,这个项目的一部分——但一旦松开,将用于我很棒的项目——是为了帮助我熟悉这些主题。
你能帮帮我吗,哦,光荣的陌生人?:)
问候; 独眼太空鱼
qt - Download an excel file as attachment using Qt browser
I am working on Qt browser(code taken from Qt Tab Browser Example). This Qt browser successfully downloads an image file, but not an excel/pdf file. I need to download an excel/pdf file as attachment on click of a button. Excel generation code at back-end uses PHPExcel to generate and finally saves it using 'php://output'. On browser side, when I read through QNetworkReply's 'readAll()' function, some encoded string '��ࡱ�' gets printed and nothing gets saved in QFile object, totally empty file.
How do I get the desired excel file from this encoded string ? Please, any help. It is Linux OS and I use LibreOffice if it matters.
qt - 用 PyQt5 网络访问管理器下载的文件去哪了?我该如何保存它?
没有指定要保存的文件,我创建了这个:
我提到的最后一个函数确实写入了接收到的字节。于是,就下载好了。如果我没有指定保存路径,它去了哪里?我怎样才能保存它?
c++ - 无法通过 QNetworkAccessManager 获取 url(结果与我在浏览器中看到的不同)
我的项目使用 QT 4.8.2。我的问题是 QTNetworkAccess 无法正确获取我的网址(或解码)。如果我将我的网址粘贴到浏览器,我会看到浏览器中的结果与我在结果中看到的不同(QNetworkreply)。
这是我需要获取的示例网址:* https://myhost/folder/folder/rss?cn1%5B0%5D=Web%2C+Mobile+%26+Software+Dev&cn2%5B0%5D=Web+Development
或者,没有 urlencode:** https://myhost/folder/folder/rss?cn1[]=Web%2C+Mobile+%26+Software+Dev&cn2[]=Web+Development
我尝试将 QUrl 作为 * 和 ** 传递。
这是我得到的代码:
也许,我的问题是 url 中的“+”符号......但我不知道。我可以提供我需要测试的完整链接。
请帮忙。
c++ - QT-FTP 上传错误
我正在尝试将一个简单的 txt 文件上传到 ftp 服务器,但从服务器收到“QNetworkReply::ContentOperationNotPermittedError”回复,我认为这与我的文件层次结构有关。
这是我的 ftp 服务器的文件顺序和我的 qt-ftp 配置: