Përgjigjja një sfide proxy të WinHTTP në dorezën e kërkesës
Përdorni WinHttpSetCredentials me objektivin e vërtetimit të proxy-t dhe një skemë të ofruar e të mbështetur, pastaj riprovoni kërkesën me qëllim.
Pasi një kërkesë WinHTTP merr 407, përdorni WinHttpQueryAuthSchemes për të shqyrtuar metodat e ofruara dhe për të zgjedhur një që mbështetet nga klienti dhe llogaria. Vendosni kredencialet në atë kërkesë:
WinHttpSetCredentials(
requestHandle,
WINHTTP_AUTH_TARGET_PROXY,
selectedScheme,
proxyUser,
proxyPassword,
nullptr);
Argumenti i fundit i rezervuar duhet të jetë null. Kontrolloni rezultatin Boolean dhe, në rast dështimi, GetLastError. Suksesi do të thotë që API-ja pranoi cilësimin, jo që proxy-i pranoi hyrjen.
Ridërgoni përmes një rrjedhe të kontrolluar vërtetimi dhe shqyrtoni përgjigjen. Kufizoni përpjekjet; një rrjedhë e trupit të kërkesës tashmë e konsumuar duhet të jetë e riprodhueshme nëse operacioni përsëritet. Një 401 e destinacionit përdor WINHTTP_AUTH_TARGET_SERVER, ndryshe nga ky objektiv proxy.
Këto kredenciale vlejnë për një kërkesë të vetme. WinHTTP nuk i kthen ato në një depo të përgjithshme kredencialesh për kërkesat e mëvonshme. Lidhjet e vërtetuara të ripërdorura mund të fshehin përkohësisht një sfidë tjetër, prandaj aplikacioni duhet të trajtojë ende sfidat e ardhshme.
Mbajeni zgjedhjen e proxy-t të veçuar. Një varg adrese që mban kredenciale nuk e zëvendëson këtë API të dorezës së kërkesës, ashtu si arritja me sukses e pikës fundore nuk e përfundon vërtetimin.