Qt Network povas mem intertrakti SOCKS5 por TCP-ingo. En ekzistanta Qt-aplikaĵo, agordu la ingon antaŭ konekti:

QNetworkProxy proxy(
    QNetworkProxy::Socks5Proxy,
    "proxy.example.net",
    1080
);

socket.setProxy(proxy);
socket.connectToHost("service.example.net", 12345);

socket estas ekzistanta QTcpSocket. La celo kaj haveno en la ekzemplo reprezentas la TCP-servon de la aplikaĵo. Qt unue atingas la prokurilon, poste petas ĝin konekti al tiu celo. Por publike atingebla TCP-servo, kie publika peranto estas permesata, la listo de SOCKS5-prokuriloj provizas kandidatojn por ĉi tiu ekzemplo sen prokurila konto. Kontrolu, ke la kandidato permesas la efektivan gastiganton kaj havenon de la servo.

La kutimaj nesinkronaj ingaj signaloj ankoraŭ validas: atendu connected() antaŭ interŝanĝi aplikaĵajn datumojn, kaj pritraktu errorOccurred(). Tenu la ingan objekton viva dum la konekto estas uzata. Por blokanta kodo, uzu anstataŭe la dokumentitajn atendmetodojn de Qt kun intenca tempolimo.

Ĉi tio postulas Qt Network, ne GUI bazitan sur widgets. La eksplicita agordo apartenas al ĉi tiu ingo. Aliaj ingoj povas konservi la defaŭltojn de sia aplikaĵo aŭ elekti alian prokurilon. Por fari ĉi tiun ingon rekta, agordu ĝian prokurilon-tipon al QNetworkProxy::NoProxy antaŭ konekti.

Rilataj artikoloj