AutoProxy Cache
A WinHttpGetProxyForUrl függvény kérésenként hajtja végre az autoproxy-keresést a megadott URL-címhez. Ha több proxyt ad vissza, az ügyfélalkalmazásoknak tesztelniük kell az egyes proxykat a kérés elküldése előtt (további információ: A WinHTTP autoproxy-problémáinak szakaszában csak egy proxykiszolgáló támogatott). A jelen témakörben szereplő információk a WinHttpGetProxyForUrl hívására vonatkoznak, amikor az ügyfél automatikus proxyfelderítést határoz meg.
WinHttpGetProxyForUrl opcionálisan megkeresi az autoproxy URL-címet, és letölti az autoproxy szkriptet a webhelyről. A WinHttp az autoproxy szkriptet használja a proxykiszolgálók megkereséséhez. A rendszer az autoproxy URL-címet és az autoproxy-szkriptet is gyorsítótárazza a megadott munkamenethez. Minden munkamenethez csak egy autoproxy URL-cím és szkript lesz gyorsítótárazva. Az autoproxy-szkript és az URL-cím általában addig gyorsítótárazva van, amíg a számítógéphez társított IP-cím nem változik. Ha a WinHttpGetProxyForUrl hívása során új IP-címet észlel, a hívás megkísérli megkeresni az új autoproxy URL-címet és szkriptet, és gyorsítótárazza az eredményeket. Munkamenetenként csak egy felhasználó engedélyezett, hogy a gyorsítótárazott adatok ne legyenek megosztva a számítógép többi felhasználójával. További információ: WinHTTP-munkamenetek áttekintése.
Ha a folyamaton kívüli szolgáltatás aktív WinHttpGetProxyForUrl meghívásakor, a gyorsítótárazott autoproxy URL-cím és szkript a teljes számítógép számára elérhető. Ha azonban a folyamaton kívüli szolgáltatást használja, és az fAutoLogonIfChallenged jelző a pAutoProxyOptions struktúrában igaz, akkor az autoproxy URL-cím és a szkript nem lesz gyorsítótárazva. Ezért az WinHttpGetProxyForUrl meghívása az fAutoLogonIfChallenged taggal IGAZ további többletterhelési műveleteket eredményez, amelyek hatással lehetnek a teljesítményre. A teljesítmény javításához az alábbi lépések használhatók.
A teljesítmény javítása
- Hívja meg WinHttpGetProxyForUrl az fAutoLogonIfChallenged paraméterrel hamis. Az autoproxy URL-cím és a szkript gyorsítótárazva lesz a WinHttpGetProxyForUrl jövőbeli hívásaihoz.
- Ha az 1. lépés sikertelen, ERROR_WINHTTP_LOGIN_FAILURE, hívja meg WinHttpGetProxyForUrl a fAutoLogonIfChallenged tagot IGAZ.