我可以使用QNetworkCookieJar
来检索,存储和重新发送QNetworkManager
的Cookie。多个QNetworkAccessManager
实例可以共享一个QNetworkCookieJar
。在Qt应用程序中共享Cookie的最佳方式
到目前为止,我已经使用了多个QNetworkAccessManager
情况下,每一个类(在这里我需要阅读):
- 所以我可能会给整个1..1
QNetworkAccessManager
实例 - 或者是共享一个单
QNetworkCookieJar
最好只有一个单独的QNetworkAccessManager
,在所有QNetworkRequest
之间共享一个Jar。作为单一对象的方式是否是QNetworkAccessManager
?文档说应该只有一个实例。那么我会更好地使用单身人士QNetworkAccessManager
?
什么是最合适的方法?
------编辑-------
kkoehne's answer是什么,我可以告诉正确的。这也是文档所说的。然而,尝试这种方法时,我已经注意到2个问题:
- 虽然我们现在一个
QNetworkAccessManager
有每个Web服务,转变为一个单一实例意味着我需要时刻区分什么样的内容我刚刚收到“完成“插槽(从QNetworkAccessManager::finished
中调用的插槽)。这是可行的,但不方便。 - 我们用不同的线程运行我们的读者 - 遗憾的是,我忘记在这个问题中提到这个问题。这使得几乎不可能使用
QNetworkAccessManager
的单个实例,因为成员函数是reentrant,但不是线程安全的。 (QNetworkAccessManager from ThreadPool)
相关:QNetworkAccessManager get/post from different thread possible?
正确,QNetworkAccessManager,而不是QNetworkManager我的错误。固定在上面 –