QNetworkAccessManager 是否支持 HTTPS 代理?

问题描述

I compiled OpenSSL on my Windows machine 并且能够使用 QNetworkAccessManager 进行 HTTPS 查询,但是当我尝试添加 HTTPS 代理时

QNetworkAccessManager m_nm;
connect(&m_nm,&QNetworkAccessManager::proxyAuthenticationrequired,this,&BinanceReceiver::onProxyAuthenticationrequired);
connect(&m_nm,&QNetworkAccessManager::sslErrors,&BinanceReceiver::onSslErrors);

QNetworkProxy m_proxy(QNetworkProxy::HttpProxy,"host.com",3129,"user","password");
m_nm.setProxy(m_proxy);

qnetworkrequest request;
request.setUrl(MakeUrl(url));
QNetworkReply* reply = m_nm.get(request);

QObject::connect(reply,&QNetworkReply::finished,[this,reply]()
{
    if (reply->error())
    {
        netLogger.error(reply->errorString());
    }
    else
    {
        //...
    }

    //Ensure it is deleted after this handler is called,but not before.
    delete reply;
});

它停止工作,我根本没有收到回复,也没有触发 proxyAuthenticationrequiredsslErrors

它是一个带有身份验证的 Squid HTTPS 代理。

QNetworkAccessManager 是否支持 HTTPS 代理?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)