Stel Qt se SOCKS5 UDP-proxy op voordat die sokket gebind word
Gebruik setProxy op die bestaande QUdpSocket en lees dan die werklike gebinde adres en poort in plaas daarvan om aan te neem die versoekte poort is behou.
QNetworkProxy proxy(
QNetworkProxy::Socks5Proxy,
QStringLiteral("proxy.example.net"),
1080);
udpSocket->setProxy(proxy);Pas dit toe op die toepassing se bestaande QUdpSocket voor bind of connect. Die SOCKS-bediener moet UDP-assosiasie implementeer; proxy-vermoënsvlae en suksesvolle TCP-blaai toets nie daardie bewerking nie. Vir 'n toegelate openbare UDP-toets bied die SOCKS5-proxyslys adreskandidate, maar elke kandidaat se UDP-assosiasie en teikentoegang moet afsonderlik geverifieer word.
| Bewerking | SOCKS5-UDP-oorweging wat Qt dokumenteer |
|---|---|
| bind | Kan uittyd |
| Versoek 'n nie-nul plaaslike poort | Waarborg nie dat daardie poort gebruik sal word nie |
| Inspekteer resultaat | Lees localPort en localAddress vir werklike inligting |
Die aflos voeg 'n UDP-pad by waarop pakketverlies steeds moontlik is. Proxyrekeningwaardes gebruik die objek se user/password-eienskappe.
Die verandering van die proxy kan nie 'n gekoppelde sokket verskuif nie. Interpretteer localhost-proewe ook versigtig: Qt omseil netwerkproxies vir sy gedokumenteerde localhost-adresse in connectToHost, bind of listen.