Qt中第一请求web api连接返回缓慢问题

项目中用到了QNetworkAccessManager QNetworkRequest 调用web api.程序在有些机器上第一次请求webapi过好久才返回结果(一个很简单的web接口)。表现为win10机器请求很快返回,有些win7返回也很快,但有个测试同事机器win7系统第一次请求很慢。开始以为是QT问题(因为用QT用了不到一个月)。后来用C#用HttpWebRequest写了简单Demo也在那个测试同事机器上测试第一请求还是会很慢。这时我意思到了应该不是QT问题。应该是机器环境问题。那到底是什么环境问题呢

如是在网上搜索了一下c#相关请求问题。果然有类似问题。解决Win7中第一次HttpWebRequest连接缓慢、超时等问题

综合上述可能是和系统不同的“默认代理和用户验证策略”有关。所以我们就不设置代理。

(一)c#中解决办法通过编码的方式手动关闭Proxy。

 var req = WebRequest.Create("http://www.google.com") ;
 req.Proxy = null;

(二)QT中解决办法

QNetworkAccessManager *networkAccessManager=new QNetworkAccessManager();

networkAccessManager->setProxy(QNetworkProxy::NoProxy);

参考 Qt 之 QNetworkProxy(网络代理)

posted @ 2019-12-24 15:17  鬼谷子com  阅读(781)  评论(0编辑  收藏  举报