Qt Network na iya yin shawarwarin SOCKS5 kai tsaye don socket ɗin TCP. A cikin manhajar Qt da ta kasance, saita socket ɗin kafin haɗawa:

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

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

socket wani QTcpSocket ne da ya kasance. Manufa da tashar jiragen ruwa na misali suna wakiltar sabis ɗin TCP na manhajar. Qt ya fara isa wurin wakili, sannan ya nemi ya haɗa zuwa wannan manufa. Don sabis ɗin TCP da ake iya samu ga kowa inda aka yarda da tsakiyar mai shiga tsakani na jama'a, jerin wakilai na SOCKS5 yana ba da 'yan takara don wannan misali ba tare da asusun wakili ba. Tabbatar cewa ɗan takarar ya yarda da ainihin mai masaukin da tashar jiragen ruwa na sabis ɗin.

Alamomin socket na asynchronous na yau da kullun har yanzu suna aiki: jira connected() kafin musayar bayanan manhaja, kuma sarrafa errorOccurred(). Ka riƙe abin socket ɗin da rai yayin da ake amfani da haɗin. Don lambar da ke toshewa, yi amfani da hanyoyin jira da aka rubuta na Qt tare da ƙayyadadden lokaci maimakon.

Wannan yana buƙatar Qt Network, ba GUI da aka gina akan widgets ba. Takamaiman saitin na wannan socket ne. Sauran sockets na iya riƙe tsoffin saitunan manhajarsu ko su zaɓi wani wakili. Don mai da wannan socket ɗin kai tsaye, saita nau'in wakilinsa zuwa QNetworkProxy::NoProxy kafin haɗawa.

Labarai masu alaƙa