【问题标题】:QNetworkReply: Network access is disabled in QWebViewQNetworkReply:在 QWebView 中禁用了网络访问
【发布时间】:2016-02-11 10:51:54
【问题描述】:
我无法将网站加载到我的 QWebView,QNetworkReply 向我返回错误:网络访问被禁用。从本地作品加载文件。
我正在使用 Qt5。有谁知道为什么连接被禁用以及这条线如何影响这种情况:
QNetworkProxyFactory::setUseSystemConfiguration(false);
我的 eth0 连接正常,我可以 ping 任何网站。
【问题讨论】:
标签:
c++
qt
qt5
qwebview
qnetworkaccessmanager
【解决方案1】:
来自 Qt 文档:calling setUseSystemConfiguration() overrides any application proxy or proxy factory that was previously set. 所以请注意之前不要设置任何其他代理。
此外,如果你想检查网络访问,你可以这样做:
QNetworkAccessManager m_pManager;
QNetworkConfigurationManager configManager;
m_pManager.setConfiguration(configManager.defaultConfiguration());
connect(&m_pManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(replyFinished(QNetworkReply*)));
connect(&m_pManager, SIGNAL(networkAccessibleChanged(QNetworkAccessManager::NetworkAccessibility)), this, SLOT(networkAccessibleChanged(QNetworkAccessManager::NetworkAccessibility)));
在你的位置:
if(accessible != QNetworkAccessManager::Accessible)
{
// case where the network is not available
}
而对于回复,你可以在槽replyFinished()查看过程中是否有错误。