AutoProxy Cache
La funzione diWinHttpGetProxyForUrlesegue la ricerca automatica dellaproxy per ogni richiesta per l'URL specificato. Se vengono restituiti più proxy, le applicazioni client devono testare ogni proxy prima di inviare la richiesta . Per altre informazioni, vedere la sezione solo un server proxy è attualmente supportato sezione problemi diProxy automatico in WinHTTP. Le informazioni contenute in questo argomento si applicano alle chiamate a WinHttpGetProxyForUrl quando il client specifica l'individuazione automatica del proxy.
WinHttpGetProxyForUrl individua facoltativamente l'URL autoproxy e scarica lo script autoproxy da tale sito. WinHttp usa lo script autoproxy per individuare i server proxy. Sia l'URL autoproxy che lo script autoproxy vengono memorizzati nella cache per la sessione specificata. Per ogni sessione vengono memorizzati nella cache solo un URL e uno script autoproxy. In genere, lo script e l'URL autoproxy vengono memorizzati nella cache fino a quando l'indirizzo IP associato al computer non viene modificato. Se viene rilevato un nuovo indirizzo IP durante una chiamata a WinHttpGetProxyForUrl, la chiamata tenterà di individuare un nuovo URL e uno script di reimpostazione automatica e memorizzare nella cache i risultati. È consigliabile consentire un solo utente per sessione, in modo che i dati memorizzati nella cache non vengano condivisi con altri utenti nel computer. Per altre informazioni, vedere Panoramica delle sessioni WinHTTP.
Se il servizio out-of-process è attivo quando viene chiamato WinHttpGetProxyForUrl, l'URL e lo script autoproxy memorizzati nella cache sono disponibili per l'intero computer. Tuttavia, se viene usato il servizio out-of-process e il flag fAutoLogonIfChallenged nella struttura pAutoProxyOptions è true, l'URL e lo script autoproxy non vengono memorizzati nella cache. Pertanto, chiamando WinHttpGetProxyForUrl con il membro fAutoLogonIfChallenged impostato su TRUE comporta operazioni di overhead aggiuntive che possono influire sulle prestazioni. I passaggi seguenti possono essere usati per migliorare le prestazioni.
Per migliorare le prestazioni
- Chiamare WinHttpGetProxyForUrl con il parametro fAutoLogonIfChallenged impostato su false. L'URL e lo script autoproxy vengono memorizzati nella cache per le chiamate future a WinHttpGetProxyForUrl.
- Se il passaggio 1 ha esito negativo, con ERROR_WINHTTP_LOGIN_FAILURE, chiamare WinHttpGetProxyForUrl con il membro fAutoLogonIfChallenged impostato su TRUE.